commonjs模块和es6模块的区别

2023-05-16

es6模块在浏览器端和服务器端都可用,commonjs只适用于服务端

1,es6是编译时输出接口(接口在代码在解析阶段就已经生成),commonjs是运行时加载,在脚本完成的时候才全部加载完

2,es6输出的是值的引用,commonjs输出的是值的拷贝(vue2的组件data是一个function)

3,es6语法是静态的(import必须在顶层,其参数只能是字符串)

commonjs语法是动态的,require可以根据条件判断是否记载,参数也可以是变量

4,es6导入的模块是只读的引用(不能够修改变量的指针指向,内部的修改可以),commonjs导入的是可变的普通的变量

5,es6支持异步加载,commonjs不支持

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

commonjs模块和es6模块的区别 的相关文章

随机推荐