在html中使用javascript的幾種方法:
直接放在html中
<script>
console.log('hello world');
</script>
引入外部文件
<script src="script.js"> </script>
從實(shí)用角度來說把所有腳本都丟到 </body>之前是最佳實(shí)踐,沒有 defer 或 async,瀏覽器會(huì)立即加載并執(zhí)行指定的腳本,“立即”指的是在渲染該 script 標(biāo)簽之下的文檔元素之前,也就是說不等待后續(xù)載入的文檔元素,讀到就加載并執(zhí)行。
延遲腳本
<script defer src="myscript.js"></script> //html4.01中定義的defer
有 defer,加載后續(xù)文檔元素的過程將和 script.js的加載并行進(jìn)行(異步),但是 script.js的執(zhí)行要在所有元素解析完成之后,DOMContentLoaded事件觸發(fā)之前完成。
異步腳本:
<script async src="script.js"></script>
有 async,加載和渲染后續(xù)文檔元素的過程將和 script.js的加載與執(zhí)行并行進(jìn)行(異步)。async,只適用外部腳本文件,但并不保證其先后順序