Middle
Kokia yra <script>, <script async> ir <script defer> žymų skirtumas?
sobes.tech AI
Atsakymas iš AI
Įprastas <script>: naršyklė sustabdo HTML analizę, įkelia ir vykdo skriptą, tada tęsia analizę. Blokuoja rodymą.
<script async>: skriptas įkeliamas asinchroniškai, HTML analizė tęsiasi. Skriptas vykdomas iškart po įkėlimo ir gali nutraukti HTML analizę. Skriptų vykdymo tvarka nėra garantuota.
<script defer>: skriptas įkeliamas asinchroniškai, HTML analizė tęsiasi. Skripto vykdymas atidedamas iki HTML analizės ir DOM medžio sudarymo pabaigos. Skriptai vykdomi jų pasirodymo HTML'e tvarka.
| atributas | HTML analizė | Skripto įkėlimas | Skripto vykdymas | Tvarkos priklausomybė |
|---|---|---|---|---|
| Nėra | Sustabdo | Blokuojantis | Blokuojantis | Garantija |
async |
Tęsiasi | Nefiksuojantis | Gali nutraukti analizę | Nėra garantijos |
defer |
Tęsiasi | Nefiksuojantis | Po HTML analizės | Garantija |