关于script的defer和async属性

defer 延迟脚本:

例子:

1.脚本会延迟到整个页面都解析完毕后,DOMContentLoaded 事件触发之前运行。
因此,在

1.加载和渲染后续文档元素的过程将和 script.js 的加载与执行并行进行(异步)

2.指定async属性的目的是不让页面等待此脚本的下载和执行,从而异步加载页面其他内容。为此,建议不要在加载期间修改DOM

3.标记为async的脚本并不保证按照指定它们的先后顺序执行。因此有多个异步脚本时确保两者之间互不依赖。

4.async属性只适用于外部脚本

参考资料:《JavaScript高级程序设计(第3版)》2.1.2以及2.1.3

你可能感兴趣的:(关于script的defer和async属性)