【JS】AMD和CMD的區別

AMD(Asynchronous Module Definition)即異步模塊化定義,是 RequireJS 在推廣過程中對模塊定義的規範化產出。

CMD(Common Moudle Definition)即通用模塊定義,是 SeaJS 在推廣過程中對模塊定義的規範化產出。

共同點:AMD和CMD都是 一種框架在推廣的過程中對模塊定義的規範化產出;而且它們都是異步加載模塊。

不同點:

1. RequireJS 在主文件裏是將所有的文件同時加載;然而 SeaJS 強調一個文件一個模塊。

2. AMD推崇依賴前置,CMD推崇依賴就近。

3. AMD和CMD對依賴模塊的執行時機有所不同。

AMD加載完模塊後,就立馬執行該模塊;CMD加載完模塊後不會立即執行,而是等遇到require語句的時候再執行。

4. AMD的API默認是一個當多個用,CMD的API嚴格區分,推崇職責單一。

各自的優點:AMD用戶體驗好,因爲模塊提前執行了;CMD性能好,因爲只有用戶需要的時候才執行。

參考:

AMD和CMD的區別

AMD 和 CMD 的區別有哪些

END

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章