AMD, CMD, CommonJs 和ES6对比

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

define(['page/util'], function(util){
    function  fn1(){
        util.log('hello world!');
    }
    return {
          fn1: fn1
    }
})

在定义一个函数的时候可以依赖其它的模块,是一种异步调用,也叫做依赖前置。(关于这块儿可以联想下vue项目中引入node_modules中的依赖)。

二. CMD
cmd是seajs在推广过程中对模块定义的规范化产出。(seajs是淘宝团队的产出)

define(function(require,exports,module){
    //通过require 引入依赖
    var $=require('jquery');
    var Spinning=require('./spinning");
}

三. CommonJs
CommonJs规范,module.exports node.js中常用
···
exports. area=function(r){
return Math. PIrr;
};
exports. circumference=function(r){
return 2* Math. PI*r;
};
也可以 module.exports 匿名输出
···

四. ES6
ES6新特性 export/import


微信图片_20190630233100.png

你可能感兴趣的:(AMD, CMD, CommonJs 和ES6对比)