1. 程式人生 > >CMD和AMD理解

CMD和AMD理解

聲明 enc 中文 問題: ini cto 接口 async port

#AMD <br>
1.AMD就是Asynchronous Module Definition,中文名是異步模塊定義的意思。<br>
2.AMD解決兩個問題:解決依賴、異步加載<br>
3.requireJs語法<br>
定義:define(id,dependencies,factory);
id:可選參數,用來定義模塊的標識,如果沒有,則默認是腳本的文件名(去掉擴展名)
dependencies:當前模塊依賴的其他模塊名稱數組
factory:工廠方法,模塊初始化的函數或者對象。
加載:require([dependencies],function(){});
dependencies:數組,依賴的模塊
function:回調函數,當模塊加載成功後,在函數中調用這些模塊。
#CMD <br>
1.CMD即Common Module Definition通用模塊定義
2.seajs和requirejs一樣,只不過在模塊定義方式和加載的時候不一樣
3.seajs語法<br>
定義:define(function(require,exports,module){});
require:是一個方法,接受模塊標識作為唯一參數,用來獲取其他模塊提供的接口。require(id)
exports:是一個對象,用來向外提供模塊接口
module:是一個對象,用來批量輸出模塊的屬性和方法
加載:seajs.use([‘1.js‘,‘2.js‘,...],function(mod1,mod2,...){})
#AMD和CMD區別
1.AMD推薦依賴前置,在定義模塊的時候就要聲明其依賴的模塊.用戶體驗好,沒有延遲,依賴模塊提前執行了。
2.CMD推薦就近依賴,只有再用到某個模塊的時候去require。性能好,只有去使用的時候才去執行。

CMD和AMD理解