-
16:48 #浏览器工作原理与实践 # async defer核心差异对比表
特性 普通 <script>
async
defer
执行顺序 按文档顺序立即执行 下载完成立即执行(无序) 按文档顺序延迟执行(有序) 阻塞 DOM 解析 是 可能(若下载快于解析) 否 保证执行顺序 是 否(先下载完先执行) 是 适用场景 关键渲染路径脚本 独立工具库(如统计代码) 依赖 DOM 的脚本 对 DOMContentLoaded 影响 延迟事件触发 可能提前或延迟 不延迟
1分钟阅读
16:48 #浏览器工作原理与实践 # async defer核心差异对比表
特性 | 普通 <script> | async | defer |
---|---|---|---|
执行顺序 | 按文档顺序立即执行 | 下载完成立即执行(无序) | 按文档顺序延迟执行(有序) |
阻塞 DOM 解析 | 是 | 可能(若下载快于解析) | 否 |
保证执行顺序 | 是 | 否(先下载完先执行) | 是 |
适用场景 | 关键渲染路径脚本 | 独立工具库(如统计代码) | 依赖 DOM 的脚本 |
对 DOMContentLoaded 影响 | 延迟事件触发 | 可能提前或延迟 | 不延迟 |