1.1 Script元素
1.1.1 標(biāo)簽的位置
現(xiàn)在Web應(yīng)用程序一般都把全部JavaScript引用放在<body>
元素中頁(yè)面內(nèi)容的后面,這樣可以在解析JavaScript腳本之前那伐,頁(yè)面的內(nèi)容完全呈現(xiàn)在瀏覽器中踏施。用戶(hù)也會(huì)因?yàn)闉g覽器窗口顯示空白頁(yè)面的時(shí)間縮短而感到打開(kāi)頁(yè)面的速度加快。
1.1.2 延遲腳本
defer
屬性(只適用于外部腳本文件)表明腳本在執(zhí)行時(shí)不會(huì)影響頁(yè)面的構(gòu)造罕邀,即腳本會(huì)被延遲到整個(gè)頁(yè)面都解析完畢后再運(yùn)行畅形。
1.1.3 異步腳本
async
屬性(只適用于外部腳本文件)告訴瀏覽器立即下載文件,但是標(biāo)記async
的腳本并不保證按照指定它們的先后順序執(zhí)行诉探。指定async
屬性的目的是不讓頁(yè)面等待兩個(gè)腳本下載和執(zhí)行日熬,從而異步加載頁(yè)面其他內(nèi)容。
1.2 嵌入代碼與外部文件
使用外部文件的優(yōu)點(diǎn):
- 可維護(hù)性
- 可緩存
- 適應(yīng)未來(lái)