- ES6 模块与 CommonJS 模块的差异
区别 | CommonJS 模块 | ES6 模块 | 原因 |
---|---|---|---|
起作用的时机 | CommonJS 模块是运行时加载(运行时) | ES6 模块是编译时输出接口(编译时) | CommonJS 加载的是一个对象(即module.exports属性),该对象只有在脚本运行完才会生成。而 ES6 模块不是对象,它的对外接口只是一种静态定义,在代码静态解析阶段就会生成。 |
模块输出 | CommonJS 模块输出的是一个值的拷贝 | ES6 模块输出的是值的引用 |
- 出处:http://es6.ruanyifeng.com/#docs/module-loader#ES6-%E6%A8%A1%E5%9D%97%E4%B8%8E-CommonJS-%E6%A8%A1%E5%9D%97%E7%9A%84%E5%B7%AE%E5%BC%82
ES6 模块与 CommonJS 模块的差异
原文地址:https://www.cnblogs.com/cag2050/p/9754501.html