今天小小的卖弄下AMD和CMD的区别,也是刚刚学,不对之处,请指正,包含!
AMD是RequireJS在推广过程当中对模块定义的规范化产出;
CMD是SeaJS在推广过程当中对模块定义的规范化产出;浏览器
这些规范的目的都是为了Javascript的模块化开发,特别是在浏览器端的。
目前这些规范的实现都能达成浏览器模块化开发的目的;模块化
区别:
一、区域以来的模块,AMD是提早执行,CMD是延迟执行。不过RequireJS从2.0开始,也改为能够延迟执行(根据写法不一样,处理方式不一样)。CMD推崇as lazy as possible.
二、CMD推崇依赖就近,AMD推崇依赖前置。ui
//CMD define(function(require,exports,module){ var a = require("./a"); a.doSomethis(); var b = require("./b")//依赖能够就近书写 b.doSomething() }) //AMD define(['./a,./b'],function(a,b){//依赖必须一开始就写好 a.dosomething() b.dosomething() })
文中内容来自于https://www.zhihu.com/question/20351507/answer/14859415,谢谢this