作为一个node小白,记录下个人的简单理解
exports/module.exports: 只有node支持
export/import :仅es6支持
require: node、es6均支持引入
node模块
node里遵循common.js规范,解释下exports 与 module.exports的区别
exports = module.exports = {};
ES6模块
相信已经很熟悉ES6模块的使用了,阮一峰 es6 模块
ES6 与common.js的区别
- 生成时间不同
- common.js 加载的是一个对象(即:module.exports属性),改对象只能在脚本运行结束时才生成
- ES6模块不是对象,是一种静态定义,编译时生成
- 输出不同
- common.js 输出的是一个对象的复制
- ES输出的是一个只读引用