考察点:解析流程、阻塞机制
HTML 是边下载边解析的。
当解析到 <script> 时:
-
默认会停止解析 HTML
-
去下载并执行 JS
-
执行完再继续解析
原因是:
👉 JS 可能会修改 DOM,如果不阻塞会导致解析结果不一致
优化方式就是:
-
使用
defer -
使用
async -
或者把 script 放在 body 底部
Updated Apr 14, 2026
考察点:解析流程、阻塞机制
HTML 是边下载边解析的。
当解析到 <script> 时:
默认会停止解析 HTML
去下载并执行 JS
执行完再继续解析
原因是:
👉 JS 可能会修改 DOM,如果不阻塞会导致解析结果不一致
优化方式就是:
使用 defer
使用 async
或者把 script 放在 body 底部