AMD、CMD、CommonJs和ES6的区别


一、AMD是RequireJs在推广过程中对模块定义的规范化产出。

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

特点是:依赖前置,异步模块定义

 

二、CMD是SeaJs在推广过程中对模块定义的规范化产出。

1 //所有模块通过defined来定义
2 define(function(require,export,module){
3   //通过require引入依赖
4   var $=require('jqurey');
5   var spinning=require('./spinning');
6 })

特点是:淘宝团队提供,依赖就近,同步概念即用即加载模块。

 

三、CommonJs规范,module.exports

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后台采用的规范

 

四、ES6特性export/import

 

特点是成对出现,只有到处才能导入。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM