什么是CommonJS?
CommonJs 是一种 JavaScript 语言的模块化规范。通常在nodejs上运行。
module.export={
}
什么是AMD?
// moudle-a.js
define('moudleA', function() {
return {
a: 1
}
});
// moudle-b.js
define(['moudleA'], function(ma) {
var b = ma.a + 2;
return {
b: b
}
});
什么是CMD?
// moudle-a.js
define(function(require, exports, module) {
module.exports = {
a: 1
};
});
// moudle-b.js
define(function(require, exports, module) {
var ma = require('./moudle-a');
var b = ma.a + 2;
module.exports = {
b: b
};
});
什么是UMD?
它没有自己专有的规范,是集结了 CommonJs、CMD、AMD 的规范于一身。
((root, factory) => {
if (typeof define === 'function' && define.amd) {
//AMD
define(['jquery'], factory);
} else if (typeof exports === 'object') {
//CommonJS
var $ = requie('jquery');
module.exports = factory($);
} else {
root.testModule = factory(root.jQuery);
}
})(this, ($) => {
//todo
});
AMD与CMD的区别与联系?
AMD推崇依赖前置,在定义模块的时候就要声明其依赖的模块
依赖模块提前执行,所以用户体验好。
CMD推崇就近依赖,只有在用到某个模块的时候再去require
用到的时候才会执行,所以性能好。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。