根据MDN:
Async ...表示如果可能,浏览器应该异步执行脚本
这个定义真的很模糊。所以,让我明确表达我的理解,如果我错了,请纠正我:
我的第一个问题是当我使用关键字async加载第三方脚本时,浏览器将继续解析标签后的DOM元素,同时通过不同的方式下载脚本螺纹即可。我想知道浏览器实际上如何实现asychnoronous
。
我的解释是否正确?
我的第二个问题是什么时候使用async
代替defer
的情况好? (我理解他们之间的差异,我只是不知道何时会使用一个而不是另一个)
假设我想要包含的脚本没有任何依赖关系,并且它不依赖于其他脚本。除了执行时间的差异之外,为什么建议在这种情况下使用async
而不是defer
?
答案 0 :(得分:0)
以下是规范的内容:
https://www.w3.org/TR/html-markup/script.html#script.attrs.async
async
指定脚本一旦可用就异步执行。
https://www.w3.org/TR/html-markup/script.html#script.attrs.defer
defer
指定在解析文档后应执行脚本。