Esplorando i tipi di script async, defer e dynamic.
Daniel Movsesyan
Follow
Sep 12, 2020 – 3 min read
Oggi gli script possono essere più pesanti dell’HTML e la loro dimensione di download è maggiore, e anche il tempo di elaborazione è più lungo.
Ma ci possono essere alcuni problemi importanti come:
- Gli script non possono vedere gli elementi DOM sotto di loro
- Se c’è uno script ingombrante in cima alla pagina, “blocca la pagina”. Gli utenti non possono vedere il contenuto della pagina finché non viene scaricato ed eseguito.
Possiamo risolvere questo problema mettendo lo script alla fine (dopo l’html), ma questa soluzione costringerà lo script a caricare dopo il caricamento dell’html. Per documenti HTML lunghi, questo può essere un ritardo notevole se le persone hanno un internet lento.
Per fortuna, ci sono due attributi <script>
che ci risolvono il problema: defer
e async
.
Con l’attributo defer il browser carica lo script in modalità ‘background’ e lo esegue quando viene caricato.