commonjs

commonjs是nodejs中的模块化规范,特点是同步加载,因为服务器中的模块都存储在本地磁盘中,所以同步加载速度非常快,使用这种规范比较适合。

AMD

amd是异步加载,更适用于浏览器中(网络请求),依赖这个模块的语句都在回调函数中,加载完成后,回调才会执行,特点是依赖前置、提前执行,在申明依赖模块时,会在第一时间加载并执行。

CMD

和amd很相似,他的区别是依赖就近、延迟执行,可以在需要用到某个模块的地方再申明模块。

ESModule

Es6预研标准层面上实现的模块化规范,特点是静态分析,在js代码编译时就能引入代码,而不是运行时