Sobes.tech
Middle

Care este diferența dintre etichetele <script>, <script async> și <script defer>?

sobes.tech AI

Răspuns de la AI

Script obișnuit <script>: browser-ul oprește analizarea HTML, descarcă și execută scriptul, apoi continuă analiza. Blochează afișarea.

<script async>: scriptul se descarcă asincron, analiza HTML continuă. Scriptul se execută imediat după încărcare, putând întrerupe analiza HTML. Ordinea execuției scripturilor nu este garantată.

<script defer>: scriptul se descarcă asincron, analiza HTML continuă. Execuția scriptului este amânată până la finalizarea analizei HTML și construirea arborelui DOM. Scripturile se execută în ordinea apariției în HTML.

Atribut Analiza HTML Încărcarea scriptului Executarea scriptului Dependența de ordine
Absent Se oprește Blocantă Blocantă Garantat
async Continuă Neblocantă Poate întrerupe analiza Negarantat
defer Continuă Neblocantă După analiza HTML Garantat