什么是單線程,和異步有什么關(guān)系
單線程-只有一個線程桑谍,同一時間只能處理一件事情。如在頁面中循環(huán)處理多次焰宣,或者有alert框不處理霉囚,這時頁面的渲染就會停頓,這就是單線程導(dǎo)致的匕积。
原因-為了避免DOM渲染的沖突盈罐。瀏覽器要渲染DOM,JS可以修改DOM結(jié)構(gòu)闪唆。JS執(zhí)行的時候盅粪,瀏覽器DOM渲染會暫停,兩段JS也不能同時執(zhí)行(否則都修改DOM就沖突了)
webworker支持多線程悄蕾,但是不能訪問DOM票顾。
解決方案:異步(jquery里的deffered础浮、Promise、async/await)
什么是event-loop
是否用過jQuery的Deffered
Promise的基本使用和原理
介紹一下async/await( 和Promise的區(qū)別奠骄、聯(lián)系)
總結(jié)一下當(dāng)前JS解決異步的方案