Middle
Koja je razlika između tagova <script>, <script async> i <script defer>?
sobes.tech АИ
Одговор од АИ
Običan <script>: pregledač zaustavlja parsiranje HTML-a, učitava i izvršava skriptu, zatim nastavlja parsiranje. Blokira prikaz.
<script async>: skripta se učitava asinhrono, parsiranje HTML-a se nastavlja. Skripta se izvršava odmah nakon učitavanja i može prekinuti parsiranje HTML-a. Redosled izvršavanja skripti nije garantovan.
<script defer>: skripta se učitava asinhrono, parsiranje HTML-a se nastavlja. Izvršavanje skripte odlaže se do završetka parsiranja HTML-a i građenja DOM stabla. Skripte se izvršavaju redom kojim se pojavljuju u HTML-u.
| Atribut | Parsiranje HTML-a | Učitavanje skripte | Izvršavanje skripte | Zavisnost od reda |
|---|---|---|---|---|
| Nedostaje | Zaustavlja | Blokirajuće | Blokirajuće | Garantovano |
async |
Nastavlja | Neblokirajuće | Može prekinuti parsiranje | Nije garantovano |
defer |
Nastavlja | Neblokirajuće | Nakon parsiranja HTML-a | Garantovano |