AMD、CMD、CommonJs和es6對比

1、AMD是RequireJs在推廣過程當中對模塊定義的規範化產出。node

複製代碼
1 define(['package/lib'],function(lib){
2   function foo(){
3     lib.log("hello world");
4   };
5   return {
6     foo:foo
7   };
8 })
複製代碼

特色是:依賴前置,異步模塊定義異步

 

2、CMD是SeaJs在推廣過程當中對模塊定義的規範化產出。ui

複製代碼
1 //全部模塊經過defined來定義
2 define(function(require,export,module){
3   //經過require引入依賴
4   var $=require('jqurey');
5   var spinning=require('./spinning');
6 })
複製代碼

特色是:淘寶團隊提供,依賴就近,同步概念即用即加載模塊。spa

 

3、CommonJs規範,module.exportscode

複製代碼
1 exports.area=function(r){
2   return Math.PI*r*r;
3 }
4 
5 exports.circumference=function(r){
6   return 2*Math.PI*r;
7 }
複製代碼

特色是nodeJs後臺採用的規範blog

 

4、ES6特性export/importci

 

特色是成對出現,只有處處才能導入。同步

相關文章
相關標籤/搜索