• EN
香港:(852)3749 9734
廣州: (020) 3808 3267
[email protected]

新聞資料

javascript模塊化與命名空間

起因
 
將代碼組織到類中的壹個重要原因是讓代碼更加“模塊化”,可以在很多不同的場景中實現代碼的重用。但類不是唯壹的模塊化代碼的方式。
 
壹般來講,模塊是壹個獨立的JS文件。模塊文件可以包含壹個類定義、壹組相關類、壹個實用函數庫或者壹些待執行的代碼。
 
模塊化的目標是支持大規模的程序開發,處理分散源中代碼的組裝,並且能讓代碼正確運行,哪怕包含了不需要的模塊代碼,也可以正確執行代碼。
 
理想狀態下,所有模塊都不應當定義超過壹個全局標識。
 
模塊函數
 
通過把模塊定義在某個函數的內部來實現,定義的變量和函數都屬於該函數的局部變量,在函數外不可見。實際上,可以將這個函數作用域用做模塊的命名空間(模塊函數)
 
壹旦將模塊代碼封裝進壹個函數中,就需要壹些方法導出公用API,以便在模塊函數外部調用它們。下面有幾種方式導出公用API:
 
首先創建壹個命名空間
 
// 創建壹個全局變量用來存放與學校相關的模塊
var school;                // 創建school命名空間
if(!school) school = {};