根据MDN:脚本异步它是如何实际工作,以及何时使用它
异步......表明浏览器应该,如果可能的话,执行脚本异步
定义真的很含糊。因此,让我那句我认识明确,并请纠正我,如果我错了:
我的第一个问题的是,当我使用关键字异步加载第三方脚本,浏览器会后继续解析DOM元素在通过不同的线程下载脚本时的标签。我想知道浏览器实际上如何实现asychnoronous
。
我的解释是否正确?
我的第二个问题是什么时候使用async
而不是defer
? (我了解他们之间的差异,我只是不知道什么时候会使用一个而不是另一个)
假设我想包含的脚本没有任何依赖关系,它不依赖于通过其他脚本。为什么在这种情况下推荐使用async
而不是defer
而不是执行时间的差异?
如果没有其他脚本取决于您的脚本,则使用异步;如果他们这样做,请使用延迟。 – Ioan
让我们假设没有其他脚本取决于我将要包含的脚本。使用延迟有什么问题?这只是脚本的执行时间不同,但使用异步还有其他好处吗? – Cheng
http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html可能会帮助 –