前端模塊化:CommonJS
CommonJS是node.js遵守的模塊化規范, commonjs 規范應用于 nodejs 應用中,在 nodejs 應用中每個檔案就是一個模塊,擁有自己的作用域,檔案中的變數、函式都是私有的,與其他檔案相隔離,在服務器端,模塊的加載是運行時同步加載的;在瀏覽器端,模塊需要提前編譯打包處理,
CommonJS規范規定:
1.每個模塊內部, module 變數代表當前模塊,
2.module 變數變數是一個物件,它的 exports 屬性(即 module.exports )是對外的介面,
3.加載某個模塊,其實是加載該模塊的 module.exports 屬性,(參考阮一峰老師的描述)
什么是模塊化?
-
模塊化是指解決一個復雜問題時,自頂向下逐層把系統劃分成若干模塊的程序,對于整個系統來說,模塊是可組合、分解和更換的單元
-
編程領域中的模塊化,就是遵守固定的規則,把一個大檔案拆成獨立并互相依賴的多個小模塊
簡單來說,模塊化就是把系統分成各個獨立的部分,每個部分單獨實作功能,將系統分割成多個可獨立的功能部分,
為什么要使用模塊化?
當我們在一個html檔案中引入了多個js檔案,此時需要依賴多個模塊,就意味著會發送多個請求,從而導致請求過多,同時我們不知道他們的具體依賴關系是什么,也就是說很容易因為不了解他們之間的依賴關系導致加載先后順序出錯,將不同的功能封裝成不同的全域函式時會導致全域變數污染, 容易引起命名沖突或資料不安全,而且模塊成員之間看不出直接關系,這也間接導致我們所寫出的代碼難以維護,
重點:模塊化的好處是什么?
- 所有代碼都運行在模塊作用域,不會污染全域作用域,提高了代碼的可維護性
- 模塊可以多次加載,但是只會在第一次加載時運行一次,然后運行結果就被快取了,以后再加載就直接讀取快取結果,要想讓模塊再次運行,必須清除快取,
- 模塊加載的順序,按照其在代碼中出現的順序,
- 想要什么功能,就加載什么模塊,可以實作按需加載,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/305996.html
標籤:其他
上一篇:模塊化開發
下一篇:前端nodejs模塊化
