CommonJS与ES6 Module最本质的区别在于CommonJS对模块依赖的解决是“动态的”而ES6 Module是“静态的”。
在这里“动态的”含义是,模块依赖关系的建立发生在代码运行阶段;而“静态”则是模块依赖关系的建立发生在代码编译阶段。
// common.js B文件 //calculator.js module.exports={name:"calculator"}; A文件 //index.js const name=require('./calculator.js').name;
// es6 module //calculator.js export const name='calculator'; //index.js import {name} from './calculator.js';