在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ appendChild的script標(biāo)簽是異步執(zhí)行的嗎?

appendChild的script標(biāo)簽是異步執(zhí)行的嗎?

clipboard.png
用上圖的方式使用沒(méi)有問(wèn)題

clipboard.png
但是用append標(biāo)簽的方式就會(huì)報(bào)錯(cuò),initNECaptcha undefined。

append的script標(biāo)簽是異步執(zhí)行的?

回答
編輯回答
萌二代

首先回答你的問(wèn)題,append的script標(biāo)簽是異步執(zhí)行的? 答案是看情況,可以異步,默認(rèn)同步。 但是從你的代碼中看是同步。

那么為什么同步會(huì)造成你的“異步的”錯(cuò)覺(jué)呢?

原因在于瀏覽器請(qǐng)求下載js這個(gè)網(wǎng)絡(luò)IO操作是異步的。 代碼下載完成,返回到瀏覽器的時(shí)候,不加異步屬性的話,就會(huì)阻塞瀏覽器渲染同步執(zhí)行。剛才說(shuō)了請(qǐng)求下載js這個(gè)網(wǎng)絡(luò)IO操作是異步的,因此代碼再去請(qǐng)求下載js文件的時(shí)候,你的初始化代碼已經(jīng)執(zhí)行了,那么很顯然代碼會(huì)報(bào)錯(cuò)。

因此要想解決你的問(wèn)題,你需要將初始化代碼寫(xiě)到script的onLoad事件中去。

希望我的回答對(duì)你有幫助。 我的個(gè)人主頁(yè)是https://azl397985856.github.io/ , 掘金主頁(yè)?https://juejin.im/user/58af98...??

2017年2月10日 15:20