前面的話
由CommonJS組織提出了許多新的JavaScript架構(gòu)方案和標(biāo)準(zhǔn),希望能為前端開(kāi)發(fā)提供統(tǒng)一的指引。AMD規(guī)范就是其中比較著名一個(gè),全稱(chēng)是Asynchronous Module Definition,即異步模塊加載機(jī)制。完整描述了模塊的定義,依賴(lài)關(guān)系,引用關(guān)系以及加載機(jī)制。而AMD規(guī)范的作者親自實(shí)現(xiàn)了符合AMD規(guī)范的requireJS。本文將詳細(xì)介紹AMD及requireJS
AMD規(guī)范
AMD(Asynchronous Module Definition)翻譯為異步模塊定義。異步強(qiáng)調(diào)的是,在加載模塊以及模塊所依賴(lài)的其它模塊時(shí),都采用異步加載的方式,避免模塊加載阻塞了網(wǎng)頁(yè)的渲染進(jìn)度
AMD作為一個(gè)規(guī)范,只需定義其語(yǔ)法API,而不關(guān)心其實(shí)現(xiàn)。AMD規(guī)范簡(jiǎn)單到只有一個(gè)API,即define函數(shù)
define([module-name?], [array-of-dependencies?], [module-factory-or-object]);