Middle
Фарқи байни тегҳои <script>, <script async> ва <script defer>?
sobes.tech AI
Ҷавоб аз AI
普通の <script>:ブラウザはHTMLの解析を停止し、スクリプトを読み込み実行し、その後解析を再開します。表示をブロックします。
<script async>:スクリプトは非同期に読み込まれ、HTMLの解析は続行されます。スクリプトは読み込み直後に実行され、HTMLの解析を中断することがあります。スクリプトの実行順序は保証されません。
<script defer>:スクリプトは非同期に読み込まれ、HTMLの解析は続行されます。スクリプトの実行はHTMLの解析とDOMツリーの構築が完了した後に遅延されます。スクリプトはHTML内の出現順に実行されます。
| 属性 | HTML解析 | スクリプトの読み込み | スクリプトの実行 | 順序の依存性 |
|---|---|---|---|---|
| なし | 停止 | ブロッキング | ブロッキング | 保証される |
async |
続行 | 非ブロッキング | 解析を中断することがある | 保証されない |
defer |
続行 | 非ブロッキング | HTML解析後 | 保証される |