饥人谷技术博客

CMD、AMD、CommonJS 规范

2016-09-28  本文已影响72人  Nicklzy

为什么要使用模块化?

CMD、AMD、CommonJS 规范分别指什么?有哪些应用

AMD (Asynchronous Module Definition, 异步模块定义) 指定一种机制,在该机制下模块和依赖可以移步加载。这对浏览器端的异步加载尤其适用。
语法

define(id?, dependencies?, factory);
define('modal', ['jQuery', 'dialog'], function($, Dialog){
    $('.modal').show();
    Dialog.open();
});

AMD的库有`RequireJS` 、`curl` 、`Dojo` 等


CommonJS是服务器端模块的规范,Node.js采用了这个规范。Node.JS首先采用了js模块化的概念。

  1. 在一个模块中,存在一个自由的变量”require”,它是一个函数。
exports.add = function() {
    var sum = 0, i = 0, args = arguments, l = args.length;
    while (i < l) {
        sum += args[i++];
    }
    return sum;
};

CMD(Common Module Definition)是 SeaJS推广过程中产生的。
范例

define(function(require, exports, module) {
  exports.add = function() {
    var sum = 0, i = 0, args = arguments, l = args.length;
    while (i < l) {
      sum += args[i++];
    }
    return sum;
  };
});
上一篇 下一篇

猜你喜欢

热点阅读