採用類似amd和commonjs的方式來定義模組,define
是全域性函式,基本語法如下:
define
( id?, dependencies?, factory );
id
,模組識別符號,用來唯一標識所定義模組,只能是字串
dependencies
,模組依賴,只能是陣列,且其每一項均是所依賴模組的id
factory
,模組構造方法,可以是函式、物件、陣列
這是最常規的用法。當模組存在id時,則此模組為具名模組
define
('case/a',[
'case/b'
,'case/c'
],function
( b, c )
);
此場景下,稱模組case/a
依賴/引用模組case/b
、模組case/c
,模組case/b
被模組case/a
依賴/引用。此時,factory
為函式,執行後,將得到該模組輸出的介面,執行時,將會依次傳入dependencies
中各個id所標識的模組所輸出的介面。即,b
代表模組case/b
輸出的介面,c
代表模組case/c
輸出的介面
具名模組只有在第一次其他模組依賴時才會執行factory
並且輸出介面,之後再被依賴,將直接輸出介面
當模組沒有任何依賴的模組,可將dependencies
引數省去
define
('case/b'
,function
());
當factory
為物件或陣列時,factory
物件或資料即為該模組輸出的介面
define
('case/car',);
define
('case/size',[
'large'
,'normal'
,'small'
]);
當不寫id時,此模組則匿名模組
define([
'case/b'
,'case/c'
],function
( b, c )
);
匿名模組一經定義立即執行,因為沒有其他任何模組可以通過id來依賴於它
匿名模組也可以省去dependencies
define
(function
());
Javascript定義物件
1.原始方式 建立多個物件缺陷 var car new object car.name asdf car.method1 function 2.工廠模式,可傳遞引數 方法建立多個缺陷 function createcar return tempobj var carobj createcar 3.工...
javascript中express模組的使用
最近手裡有個工作,為我們的分布式圖計算引擎開發乙個本地的伺服器,類似於tomcat的localhost 8080或者hadoop yarn中localhost 8088一樣,可以將日誌等資訊方便的展示到web介面中,因此簡單的學習了一下如何使用js搭建本地伺服器,畢竟據說js在引擎端還是有一定地位的...
javascript的函式定義
function 函式,函式需要呼叫才能執行。1 function 語句形式 console.info fun1 直接函式形式可以在函式之前呼叫,函式直接量的形式,只有fun2變數宣告了,而沒有賦值。function fun1 2 函式的直接量形式 var fun2 function 3 建構函式的...