JavaScript定義模組

2021-07-14 21:25:47 字數 1466 閱讀 7710

採用類似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 建構函式的...