我們先定義一個<script>
沒有任何屬性。HTML文件將被解析,直到解析到 script 文件,HTML 解析將停止,并將請求獲取 script 文件(如果它是外部的)。執行 script 文件再執行 HTML解析。
defer 屬性
在<script>
元素中設置 defer 屬性,相當于告訴瀏覽器立即下載,但延遲執行。
在 XHTML 文檔中,要把 defer 屬性設置為 defer="defer"
。
async
async 只適用于外部腳本文件,并告訴瀏覽器立即下載文件。但與 defer 不同的是,標記為 async
在HTML解析過程中下載文件,并在完成下載后暫停HTML解析器執行。
在 XHTML 文檔中,要把 defer 屬性設置為 async="async"
。
參考資料:http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html