JavaScript中的AMD和CMD规范
AMD和CMD规范
AMD 和 CMD 规范的区别?
•普通区别:•CMD 推崇依赖就近,AMD 推崇依赖前置•CMD 是延迟执行,AMD 是提前执行•CMD 性能好,因为只有用于需要的时候才执行•AMD 用户体验好,因为没有延迟,依赖模块提前就执行了•最大区别:•对依赖模块的执行时机处理不同,而不是加载的时机或者方式不同,二者都是异步加载模块。•AMD 是依赖前置,js 可以方便知道依赖模块是什么,立即加载•CMD 就近依赖,需要使用把模块变为字符串解析一遍才知道依赖的那些模块
AMD
•AMD
的意思是异步模块定义
。它采用异步的方式加载模块,模块的加载不会影响它后面语句的执行。所以 依赖这个模块的语句,都定义在一个回调函数中,等到加载完成之后,这个回调函数才会执行。•AMD
采用 require()
语句加载模块,但是不同于 CommonJS,它要求两个参数。
// 简写方式
CMD 规范
•CMD
即通用模块定义,是国内发展出来的,是 seajs 推崇的规范,CMD 是依赖就近,
define(function (require, exports, module) {