今天小小的賣弄下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