頁面中的JS,默認情況下加載時候會阻塞后面的內容寞射。不過加上 async 或defer 就不一樣了劈伴。
**async **
JS中加了 async 后,這條js 不會阻塞后面的內容了抢腐,兩者并行執(zhí)行(加載異步),并且這條js 加載完后會馬上執(zhí)行襟交。defer
js中加了defer后,這條js不會阻塞后面的內容迈倍,兩者并行進行(加載異步),但是這條js是被加載捣域,執(zhí)行要等到所有元素解析完成之后啼染。
async 不保證js的執(zhí)行順序宴合,誰先加載完就誰先執(zhí)行。
defer 保證了js的執(zhí)行順序迹鹅,加載完了誰都不許執(zhí)行卦洽,等所有元素解析完了,js再一條一條執(zhí)行斜棚。