ES6模塊中,頂層this指向undefined,不應(yīng)該在頂層代碼使用this
一個(gè)模塊就是一個(gè)獨(dú)立的文件,該文件內(nèi)部的所有變量,外部無法獲取
export命令輸出的接口與其對(duì)應(yīng)的值是動(dòng)態(tài)綁定關(guān)系,即通過該接口可獲取模塊內(nèi)部實(shí)時(shí)的值
import命令大括號(hào)里的變量名必須與被導(dǎo)入模塊對(duì)外接口的名稱相同
import命令輸入的變量只讀(本質(zhì)是輸入接口),不允許在加載模塊的腳本里改寫接口
import命令命令具有提升效果,會(huì)提升到整個(gè)模塊的頭部,首先執(zhí)行
重復(fù)執(zhí)行同一句import語句,只會(huì)執(zhí)行一次
export default命令只能使用一次
export default命令導(dǎo)出的整體模塊,在執(zhí)行import命令時(shí)其后不能跟大括號(hào)
export default命令本質(zhì)是輸出一個(gè)名為default的變量,后面不能跟變量聲明語句
export default命令本質(zhì)是將后面的值賦給名為default的變量,可直接將值寫在其后
export default命令和export {}命令可同時(shí)存在,對(duì)應(yīng)復(fù)合導(dǎo)入
export命令和import命令可出現(xiàn)在模塊任何位置,只要處于模塊頂層即可,不能處于塊級(jí)作用域
import()加載模塊成功后,此模塊會(huì)作為一個(gè)對(duì)象,當(dāng)作then()的參數(shù),可使用對(duì)象解構(gòu)賦值來獲取輸出接口
同時(shí)動(dòng)態(tài)加載多個(gè)模塊時(shí),可使用Promise.all()和import()相結(jié)合來實(shí)現(xiàn)
import()和結(jié)合async/await來書寫同步操作的代碼