1. 程式人生 > >CommonJS、CMD、AMD、NodeJS創造JavaScript的未來

CommonJS、CMD、AMD、NodeJS創造JavaScript的未來

CMD是國內玉伯大神在開發SeaJS的時候提出來的,屬於CommonJS的一種規範,此外還有AMD,其對於的框架是RequireJS

1、二者都是非同步模組定義(Asynchronuous Module Definition)的一個實現;

2、CMDAMD都是CommonJS的一種規範的實現定義,RequireJSSeaJS是對應的實踐;

3、CMDAMD的區別:CMD相當於按需載入,定義一個模組的時候不需要立即制定依賴模組,在需要的時候require就可以了,比較方便;而AMD則相反,定義模組的時候需要制定依賴模組,並以形參的方式引入factory中。
區別看下邊例子:

//AMD方式定義模組
define(['dep1','dep2'],function(dep1,dep2){ //內部只能使用制定的模組 return function(){}; }); //CMD define(function(require,exports,module){ //此處如果需要某XX模組,可以引入 var xx=require('XX'); });

4、JavaScript語言是弱結構性的,通過CommonJS定義一些規範,CMDAMD得定義模組的方式對程式碼進行管理,使得更易維護;此外,NodeJS的誕生,對模組的規範定義,和包(NPM)的概念的引入,讓JS管理不再困難,一個字,爽爆了!

相關推薦

CommonJSCMDAMDNodeJS創造JavaScript未來

CMD是國內玉伯大神在開發SeaJS的時候提出來的,屬於CommonJS的一種規範,此外還有AMD,其對於的框架是RequireJS 1、二者都是非同步模組定義(Asynchronuous Mod

CommonJSAMDCMDNodeJsRequireJS到底有什麽聯系?

模塊化 包管理 conf 解決辦法 寫上 開發者 ase 例子 頁面 一、CommonJS 1.一開始大家都認為JS不強大,沒什麽用,官方定義的API只能構建基於瀏覽器的應用程序,CommonJS就按耐不住了,CommonJS API定義很多普通應用程序(主要指非瀏覽

CommonJSAMDCMDNodeJsRequireJS到底有什麼聯絡?

一、CommonJS 1.一開始大家都認為JS不強大,沒什麼用,官方定義的API只能構建基於瀏覽器的應用程式,CommonJS就按耐不住了,CommonJS API定義很多普通應用程式(主要指非瀏覽器的應用)使用的API,從而填補了這個空白。它的終極目標是提供一個類似Python,Ruby和Java標準庫

再嘮叨JS模塊化加載之CommonJSAMDCMDES6

scrip 用例 fun 理想 str text 引用 寫到 加載完成 Javascript模塊化編程,已經成為一個迫切的需求。理想情況下,開發者只需要實現核心的業務邏輯,其他都可以加載別人已經寫好的模塊。 Javascript社區做了很多努力,在現有的運行環境中,實現”模

JavaScript模塊化 --- CommonjsAMDCMDES6 modules

con scroller exports 打包 www. pretty modules 前端 depends JavaScript模塊化 --- Commonjs、AMD、CMD、ES6 modules 2017.08.25 11:49 6666瀏覽 轉載:https

認識AMDCMDUMDCommonJS

0、導言 JavaScript的生態系統一直在穩步增長,當各種元件混合使用時,就可能會發現不是所有的元件都能“和平共處”,為了解決這些問題,各種模組規範就出來了。 1、AMD(Asynchromous Module Definition - 非同步模組定義) AMD是R

ES6JavascriptCommonJSAMDnodejs的關係與差異

在前端開發中,發現小組成員總是對ES6、Javascript、CommonJS、AMD、nodejs概念搞不清,既不知道它們之間的聯絡,更不知道它們之間的差異。 理清它們的關係很簡單,首先要從最核心的說起,也就是Javascript,javascript是一種

js 模組化規範(commonjsAMDES6CMD

開發中最流行的 commonjs、AMD、ES6、CMD 規範。 參考資料: https://mp.weixin.qq.com/s/MPEhWlS9KiIc9I6Of5GpOQ http://www.ruanyifeng.com/blog/2015/05/commonjs-in-

CommonJSAMDnodejsES6概念

由模組化引出的一系列名詞——CommonJS、AMD、nodejs、ES6。 CommonJS、AMD CommonJS與AMD是為了解決JavaScript檔案之間的依賴與引用問題,它們只是一種JavaScript的包管理規範。 nodejs node

AMDCMDcommonJs

說說你對AMD和Commonjs的理解 CommonJS是伺服器端模組的規範,Node.js採用了這個規範。 CommonJS規範載入模組是同步的,也就是說,只有載入完成,才能執行後面的操作。 由於Node.js主要用於伺服器程式設計,模組檔案一般都

AMDCMDCommonJS規範

 CommonJS規範  CommonJS是在瀏覽器環境之外構建JavaScript生態系統為目標產生的專案,比如伺服器和桌面環境中。CommonJS規範是為了解決JavaScript的作用域問題

前端commonjsAMDCMDES6等模組化的對比

CommmonJS用於node端,是同步載入的AMD依賴於requirejs,是非同步載入的,是提前載入,立即載入 CMD依賴於seajs,是非同步載入,延後載入,就近載入,用時載入 ES6是ES2015的簡稱,一般通過export來暴露模組,import來匯入模組Commo

模組化——AMDCMDCommonJs

模組化是指將一個複雜問題,依照一種分類的思維把問題進行系統性的分解處理。使得系統成為“高內聚,低耦合”的模組組成,讓管理,開發,維護變得“有理可循”。 RequireJS 、Sea.js

CommonJSAMDCMD和ES6模塊化區別

var web family ava def node 如果 改變 所有 本文參考自:https://www.cnblogs.com/chenguangliang/p/5856701.html 1、CommonJS NodeJS是CommonJS規範的實現,webpac

對於模塊加載:ES6CommonJSAMDCMD的區別

內存 imp 之前 readfile 分開 sil 但是 基礎 從服務器 運行和編譯的概念 編譯包括編譯和鏈接兩步。 編譯,把源代碼翻譯成機器能識別的代碼或者某個中間狀態的語言。 比如java只有JVM識別的字節碼,C#中只有CLR能識別的MSIL。還簡單的作一些比如

前端模組化——徹底搞懂AMDCMDESM和CommonJS

我們知道,在NodeJS之前,由於沒有過於複雜的開發場景,前端是不存在模組化的,後端才有模組化。NodeJS誕生之後,它使用CommonJS的模組化規範。從此,js模組化開始快速發展。 模組化的開發方式可以提供程式碼複用率,方便進行程式碼的管理。通常來說,一個檔案就是一個模組,有自己的作用域,只向外暴露特定的

AMDCMDUMD 模塊的寫法

define jquery lang 模塊 部分 並且 pup eof foo 最近幾年,我們可以選擇的Javascript組件的生態系統一直在穩步增長。雖然陡增的選擇範圍是極好的,但當組件混合匹配使用時就會出現很尷尬的局面。開發新手們會很快發現不是所有組件都能彼此“和平相

兼容nodeamdcmd規範

module style == ports ase port nbsp amp hasd 1 ;(function(name, definition){ 2 //檢測上下文環境是否為AMD或者CMD 3 var hasDefine = typeof

AMDCMDrequireimport的區別

AMD 推崇依賴前置 CMD 推崇就近依賴 什麼意思呢?就是AMD在定義模組的時候要先宣告其依賴的模組。例如這樣: define(['jquery'],function($){ var backButton = $('.backToTop'); return {

AMDCMD和Common規範

1.名詞解釋AMD:Asynchronous Modules Definition非同步模組定義,提供定義模組及非同步載入該模組依賴的機制。CMD:Common Module Definition 通用模組定義,提供模組定義及按需執行模組 RequireJS 遵循 AMD(非同步模組定義)規範,Sea.js