module
模块思想 => 尽量静态化
=> 使得编译时就能确定模块的依赖关系
Es6 模块 || CommonJs || AMD
CommonJs模块就是对象,输入时必须查找对象属性
ES6 模块不是对象,而是通过export命令显式指定输出的代码,再通过import命令输入。
// es6
import { stat, exists, readFile } from 'fs';
全局变量污染
难以管理依赖关系
CommonJs -node环境一次只能运行一个js--入口文件
es6 Module - export import
CommonJs
module.export = '111'-导出
require -导入 require('./a.js') - 当前目录 ../ 上级目录
// 在一个模块中实际上
function(module) {
module.exports = {};
var exports = module.exports;
// 模块中的代码
return module..exports;
}