直接简单粗暴进入正题,本文只是为了在记忆模糊的时候快速纠正。
先来个总结:
require: node 和 es6 都支持的引入(CommonJS规范)
export / import : 只有es6 支持的导出引入
module.exports / exports: 只有 node 支持的导出(CommonJS规范)
然后分别具体看看先关的使用方法:
CommonJS规范:
简单来说:CommonJS定义的模块分为: 模块标识(module)、模块定义(exports) 、模块引用(require)
module.exports 和 exports 的关系 :
exports = module.exports = {};
也就是说exports = module.exports 都指向同一个内存地址,再来看看一个例子:
// a.js
let a = 100;
exports.a = 200;