成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

javaScript標(biāo)簽的defer和async

Barry_Ng / 3177人閱讀

摘要:如果遇到多個(gè)帶的標(biāo)簽,那么他們的執(zhí)行順序是無(wú)法保證的。就像上面的代碼,無(wú)法保證一定會(huì)在前面執(zhí)行。但是這兩個(gè)腳本都會(huì)先于事件執(zhí)行。

在HTML里面使用javaScript有兩種方式:

1: 通過(guò)

以上的一段代碼,如果是放在里面,那么頁(yè)面的解析(頁(yè)面的解析是遇到開(kāi)始)就要等這兩段script執(zhí)行完了才會(huì)開(kāi)始,并且規(guī)定那個(gè)先出現(xiàn)就先執(zhí)行哪個(gè),所以以上代碼會(huì)先執(zhí)行alert("hello"),再執(zhí)行alert("javaScript")

如果上面的代碼是放在body里面, 那上面代碼的存在則會(huì)直接導(dǎo)致頁(yè)面的解析,要等這段js代碼執(zhí)行完了,再繼續(xù)頁(yè)面解析的工作。

3:通過(guò)

以上的情況瀏覽器會(huì)按照文件出現(xiàn)的先后順序去下載和執(zhí)行代碼,意思就是b.js會(huì)在a.js執(zhí)行完之后再執(zhí)行。
如果上述代碼是放在body里面,那么它也是阻塞的,如果用圖表示的話就是:

**2:通過(guò)

遇到帶有async屬性的

從這個(gè)圖對(duì)比上面的第2種情況,可以看出,在下載js文件的時(shí)候,頁(yè)面的解析依然是在執(zhí)行的,只是下載完之后js的執(zhí)行會(huì)阻塞頁(yè)面的解析。
如果遇到多個(gè)帶async的

先來(lái)看一下defer的圖像表示:

defer只在

閱讀需要支付1元查看
<