当前位置: 首页 > news >正文

网站界面设计策划书怎么做智能网站排名优化

网站界面设计策划书怎么做,智能网站排名优化,站酷网怎么赚钱,浙江信息港官网CommonJS和ES Module是JavaScript中两种不同的模块系统,它们在导入导出细节上存在差异,以下是两者的具体对比以及方便区分记忆的方法: 1. 导入导出细节 CommonJS 导出:使用module.exports或exports对象来导出模块中的变量、函数…

CommonJS和ES Module是JavaScript中两种不同的模块系统,它们在导入导出细节上存在差异,以下是两者的具体对比以及方便区分记忆的方法:

1. 导入导出细节

  1. CommonJS
    • 导出:使用module.exportsexports对象来导出模块中的变量、函数或类等。可以导出多个成员,但需要将它们附加到module.exportsexports对象上。
    • 导入:使用require函数来导入其他模块。require函数返回的是被导入模块module.exportsexports对象的内容。
  2. ES Module
    • 导出:使用export关键字来导出模块中的变量、函数、类等。可以导出多个成员,也可以使用默认导出(export default)来导出一个成员。
    • 导入:使用import语句来导入其他模块。import语句可以解构被导入模块的内容,也可以导入默认导出的成员。

2. 差异

  1. 语法:CommonJS使用requiremodule.exports进行导入导出,而ES Module使用importexport关键字。
  2. 模块加载时机:CommonJS是运行时加载模块,即在代码执行到require语句时才会加载模块。而ES Module是在静态编译期间就确定模块的依赖,并在运行时加载。
  3. 值的类型:CommonJS导出的是一个值的拷贝,因此模块内部对导出值的修改不会影响到外部。而ES Module导出的是一个引用,模块内部对导出值的修改可以同步到外部。
  4. 作用域:CommonJS的模块作用域是动态的,模块中定义的变量和函数会被添加到全局作用域中(尽管在实际使用中,这通常通过模块封装来避免)。而ES Module的模块作用域是静态的,模块中定义的变量和函数不会污染全局作用域。
  5. 异步加载:ES Module支持异步加载模块,以提高性能和减少启动时间。而CommonJS只能同步加载模块。
  6. 循环依赖:由于ES Module在静态编译期间就确定模块的依赖关系,因此它可以处理循环依赖。而CommonJS可能会因为循环依赖导致程序崩溃。
  7. 浏览器兼容性:ES Module在现代浏览器中得到广泛支持,而CommonJS主要在Node.js环境中使用。

3. 方便区分记忆的方法

  1. 语法差异:记住CommonJS使用requiremodule.exports这对“动词+名词”的组合进行导入导出,而ES Module使用importexport这对“动词+动词”的组合。
  2. 加载时机:将CommonJS想象成“按需加载”的模型,即代码执行到需要时才加载模块;而将ES Module想象成“预先规划”的模型,在编译期间就确定好模块的依赖关系。
  3. 值的类型:记住CommonJS导出的是“值的拷贝”,就像复印了一份文件;而ES Module导出的是“值的引用”,就像提供了一个文件的链接。
  4. 作用域:将CommonJS想象成“开放”的模型,模块中的变量和函数可能会影响到全局作用域;而将ES Module想象成“封闭”的模型,模块中的变量和函数被严格封装在模块内部。

4. esmodule特殊情况

esmodule可以这样写

// 写法一
export var m = 1;// 写法二
var m = 1;
export {m};// 写法三
var n = 1;
export {n as m};
// 报错
function f() {}
export f;// 正确
export function f() {};// 正确
function f() {}
export {f};

5. 思考

  1. CommonJS可以记忆成数据量大,所有的关键词配上s,然后实际导出都是借助moduleexports 实际上只是对 module.exports 的一个引用。
  2. esmodule导出:的实质是,在接口名与模块内部变量之间,建立了一一对应的关系。(简单记忆:直接导出或者在对象中导出,可配合as改名
http://www.sczhlp.com/news/69727/

相关文章:

  • 昆山做网站的jofuns长春住房和城乡建设部官方网站
  • 做网站怎么能在百度搜索到公众号菜单跳转网页怎么制作
  • 左侧 导航 网站wordpress windows
  • 长沙网站开发培训中国建设部官方网站证件查询
  • 用友公司能不能做网站建设做企业网站设计
  • 营销网站的关键字wordpress 离线
  • 做网站php与python晋江网站制作
  • 商城网站需要注意事项河北网站建站系统哪家好
  • 网站建设开题报告数据库建立wordpress下载连接插件
  • 网站推广 教程自定义标签wordpress
  • 如何在自己的网站上做歌单宁波网站建设制作多少钱
  • asp.net 4.0网站开发实例教程wordpress init
  • 网站推广方案范文济宁500元做网站
  • 武夷山建设局网站公司注册资本多少有什么关系
  • 【ChipIntelli】命令次中数字不能用阿拉伯数字
  • 高县住房和城乡建设部网站汇天网络科技有限公司
  • 小型的企业网站做网站软件要钱吗
  • 做建设网站的活的兼职asp. net 做网站
  • 网站 微信开发海南网警网上报警平台
  • 做行业导航网站好现在由哪些网站可以做外链
  • 邹城有做网站的吗哈尔滨安康养老院收费标准
  • 专业专题网站建设怎么建设网站视频教程
  • 设计简单的网站网站建设重要意义
  • 郑州专业建网站虚拟主机代理
  • 做家教需要什么哪个网站的会员加快门户网站建设
  • 百度识图在线入口seo包年优化
  • 漳州做网站设计网站不用了 怎么关闭
  • 做网站那个公司比较好科技之全球垄断
  • 网站导航排版布局linux做网站教程
  • 网站类型定位宿州市住房和城乡建设局网站