规范指出“异步脚本按加载优先顺序执行。它们的文档顺序无关紧要–先加载先运行”。

我还读过异步脚本应该是完全独立的。

在这种情况下,不能保证在加载异步脚本之前先加载非异步脚本吗?

<script src="non-async-script.js"></script>
<script src="async-script.js" async></script>

最佳答案

从历史上看,浏览器将停止解析DOM,直到加载script标记之后。

现代浏览器的功能大致相同,但是要并行加载资源,它将在DOM中预先读取以查找即将到来的请求。

因此,为回答您的问题,不能保证第一个脚本标记在第二个脚本之前加载,但应在异步脚本之前执行。

09-21 00:02