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

鍍金池/ 問(wèn)答/HTML/ JS中事件以及語(yǔ)句運(yùn)行順序的問(wèn)題?

JS中事件以及語(yǔ)句運(yùn)行順序的問(wèn)題?

問(wèn)題:
1.為何onfoucs事件在這段代碼中是最后才執(zhí)行的?
2.這里有涉及到異步?不然的話為何onfocus事件還沒(méi)執(zhí)行,就繼續(xù)解析下一段代碼了?
clipboard.png

我在chrome,F(xiàn)F瀏覽器的運(yùn)行結(jié)果得到的順序都是:
1.console.log(document.readyState)
2.alert()語(yǔ)句
3.最后才是onfocus方法

運(yùn)行結(jié)果:
1.一定是先出現(xiàn)loading的,否則alert會(huì)阻塞進(jìn)程。
clipboard.png
2.當(dāng)我按下確定,則出現(xiàn)了下一段的test
clipboard.png

解答:??
PS:我對(duì)這段的代碼語(yǔ)句的順序也做了測(cè)試,但還是沒(méi)能弄懂……高手能否給我指點(diǎn)一二。

回答
編輯回答
女流氓

dom事件,異步任務(wù)等都會(huì)進(jìn)入一個(gè)“事件隊(duì)列”,當(dāng)指定的事件發(fā)生,會(huì)先把這些任務(wù),也就是這里的onfocus回調(diào)函數(shù)push進(jìn)入到“事件隊(duì)列”,只有當(dāng)主線程的代碼執(zhí)行完畢之后才會(huì)從任務(wù)隊(duì)列中讀取任務(wù),所以這里永遠(yuǎn)test都在最后。
可以參考一下JavaScript 運(yùn)行機(jī)制詳解:再談Event Loop

2017年7月5日 15:05
編輯回答
陪我終

因?yàn)閛nfocus是異步事件(同理還有click,blur這些都算)。

而在js當(dāng)中,會(huì)首先執(zhí)行完畢當(dāng)前作用域下的同步任務(wù),然后才執(zhí)行異步任務(wù)。

所以你的onfocus會(huì)最后執(zhí)行。

2017年4月14日 05:25