您的位置:首页 > Web前端 > JavaScript

js模块 - AMD/CMD

2017-04-11 11:14 120 查看
两者区别: http://www.cnblogs.com/dojo-lzz/p/4707725.html

JavaSript模块规范
- AMD规范与CMD规范介绍  : http://blog.chinaunix.net/uid-26672038-id-4112229.html
AMD规范  https://github.com/amdjs/amdjs-api/wiki/AMD

 AMD(异步模块定义)  
AMD规范定义了一个自由变量或者说是全局变量 define 的函数。
 CMD(通用模块定义)

AMD 是 RequireJS 在推广过程中对模块定义的规范化产出,
CMD是SeaJS 在推广过程中被广泛认知。

区别:

    1. 对于依赖的模块,AMD 是提
4000
前执行,CMD 是延迟执行。不过 RequireJS 从 2.0 开始,也改成可以延迟执行(根据写法不同,处理方式不同)。CMD 推崇 as lazy as possible.

    2. CMD 推崇依赖就近,AMD 推崇依赖前置。

// CMD

define(function(require, exports, module) {

    var a = require('./a')

    a.doSomething()

    // 此处略去 100 行

    var b = require('./b') //
依赖可以就近书写

    b.doSomething()

    // ...

})

// AMD 默认推荐的是

define(['./a', './b'], function(a, b) { //
依赖必须一开始就写好

    a.doSomething()

    // 此处略去 100 行

    b.doSomething()

    // ...

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: