defer属性的用途是表明脚本在执行的时候不会影响页面的构造,即脚本会被延迟到整个页面都解析完毕后再运行。在<script>元素中设置该属性,相当于告诉浏览器立即下载,但延迟执行。如果有多个js文件都设置了defer属性,则按顺序执行。
async和defer相似,async只适用于外部的脚本文件,如果有多个js文件都设置了async属性,未必按顺序执行,有可能后面的js文件
先于前面的js文件,所以应确定两个js文件不依赖。所以这时候最好还是把js文件放在body底部,并且放在</body>之前。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>async</title>
<script type="text/javascript" defer="defer" src="your01.js"></script>
<script type="text/javascript" async src="your02.js"></script>
</head>
<body>
</body>
</html>
参考:《JavaScript高级程序设计》
时间: 2024-10-06 01:18:51