首先,AMD,CMD,CommonJS都实现了文件模块化。
对于依赖的模块:AMD是提前执行;CMD是延迟执行;
AMD是依赖前置,CMD是依赖就近;
AMD官方解释:https://github.com/amdjs/amdjs-api/wiki/AMD
CMD官方解释:https://github.com/seajs/seajs/issues/242
SeaJS与RequireJS的异同:https://github.com/seajs/seajs/issues/277
CommonJS规范:
出发点:实现模块化,让JS代码支持到处运行;
在规范中:
1. 一个文件就是一个模块,拥有单独的作用域;
2. 普通方式定义的变量,对象,函数都属于该模块内;
3. 通过require()来加载模块;
4. 通过exports和module.exports来暴露模块中的内容;
参考链接:https://www.cnblogs.com/littlebirdlbw/p/5670633.html