defer只对带src的外部脚本生效;内联脚本或空src的script标签加defer会被忽略,仍同步阻塞解析;defer脚本在html解析完成、domcontentloaded触发前按声明顺序执行,不保证css/图片等资源就绪。

defer只对带src的外部脚本生效
浏览器遇到 <script src="app.js" defer></script> 时,会立刻发起下载,同时继续解析 HTML,不暂停、不等待执行。但如果你写的是 <script defer>init();</script> 或 <script src="" defer></script>,defer 会被静默忽略,脚本照常同步执行、阻塞解析。
常见错误现象:
- 控制台没报错,但
document.getElementById返回null - 本地快、线上慢时偶发白屏(DOM 没就绪就执行了)
- 把脚本挪到
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











