本文實例講述了ES6新特性之模塊Module用法。分享給大家供大家參考,具體如下:
一、Module簡介
ES6的Class只是面向?qū)ο缶幊痰恼Z法糖,升級了ES5的構(gòu)造函數(shù)的原型鏈繼承的寫法,并沒有解決模塊化問題。Module功能就是為了解決這個問題而提出的。
歷史上,JavaScript一直沒有模塊(module)體系,無法將一個大程序拆分成互相依賴的小文件,再用簡單的方法拼裝起來。其他語言都有這項功能。
在ES6之前,社區(qū)制定了一些模塊加載方案,最主要的有CommonJS和AMD兩種。前者用于服務(wù)器,后者用于瀏覽器。ES6在語言規(guī)格的層面上,實現(xiàn)了模塊功能,而且實現(xiàn)得相當(dāng)簡單,完全可以取代現(xiàn)有的CommonJS和AMD規(guī)范,成為瀏覽器和服務(wù)器通用的模塊解決方案。
ES6模塊的設(shè)計思想,是盡量的靜態(tài)化,使得編譯時就能確定模塊的依賴關(guān)系(這種加載稱為“編譯時加載”),以及輸入和輸出的變量。CommonJS和AMD模塊,都只能在運行時確定這些東西。
瀏覽器使用ES6模塊的語法如下。