前端技术钛钶维基JavaScript < ES5、ES6、ES7、… >

什么是 AMD

2019-03-07  本文已影响65人  一俢

AMD 叫做异步模块定义规范(Asynchronous Module Definition),它是 CommonJs 模块化规范的超集,但是运行于浏览器之上的,关于模块化的好处我们在 CommonJs 篇文章中我们了解过。AMD 的特点就和它的名字一样,模块的加载过程是异步的,它大大的利用了浏览器的并发请求能力,让模块的依赖过程的阻塞变得更少了。requireJs 就是 AMD 模块化规范的实现。

AMD 作为一个规范,只需定义其语法 API,而不关心其实现。AMD 规范简单到只有一个 API,即 define 函数:

 define(id?, dependencies?, factory);

具体用法如下:

// 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 差不多,不过在实现上还是有一定的差异,它们各有优缺点,我们未来会专门对这些模块化规范做对比。

上一篇下一篇

猜你喜欢

热点阅读