Middle
Wat is het verschil tussen de tags <script>, <script async> en <script defer>?
sobes.tech AI
Antwoord van AI
Normale <script>: de browser stopt het HTML-parseren, laadt en voert het script uit, en gaat dan verder met parseren. Het blokkeert de weergave.
<script async>: het script wordt asynchroon geladen, het HTML-parseren gaat door. Het script wordt direct na het laden uitgevoerd en kan het parseren onderbreken. De volgorde van uitvoering van scripts is niet gegarandeerd.
<script defer>: het script wordt asynchroon geladen, het HTML-parseren gaat door. De uitvoering van het script wordt uitgesteld tot het voltooien van het HTML-parseren en het bouwen van de DOM-boom. Scripts worden uitgevoerd in de volgorde waarin ze in de HTML staan.
| Attribuut | HTML-parseren | Script laden | Script uitvoeren | Volgorde afhankelijkheid |
|---|---|---|---|---|
| Afwezig | Stoppen | Blokkerend | Blokkerend | Gegarandeerd |
async |
Gaat door | Niet blokkerend | Kan parseren onderbreken | Niet gegarandeerd |
defer |
Gaat door | Niet blokkerend | Na HTML-parseren | Gegarandeerd |