HTML <script> async-egenskapen
Definisjon og bruk
async
Egenskaben er en boolsk egenskab.
Hvis der er sat async
Egenskaben, scriptet downloades parallelt med at siden parses og udføres øjeblikkeligt, når det er tilgængeligt. Når skriptet er fuldt downloadet, brydes siden parsing, scriptet udføres, og siden fortsætter med at blive parseret.
Bemærk:async
Egenskaben gælder kun for eksterne skript (og bør kun bruges, når src-egenskaben eksisterer).
Bemærk:Der er flere måder at udføre eksterne skript på:
- Hvis async er sat: Skriptet downloades parallelt med at siden parses og udføres øjeblikkeligt (før parsingen er færdig)
- Hvis defer er sat (men ikke async): Skriptet downloades parallelt med at siden parses og udføres efter at siden er parseret
- Hvis både async og defer mangler: Skriptet downloades og udføres med det samme, hvilket blokerer siden for at blive parseret, indtil skriptet er udført
Eksempel
Det referencerede script downloades parallelt med at siden parsees og udføres øjeblikkeligt, når det er tilgængeligt:
<script src="demo_async.js" async></script>
Syntaks
<script async>
Asynkron scriptudførsel
Browserens standardopførsel ved støtte til script-elementer er at pause behandlingen af siden, mens scriptet loader og udføres. De forskellige script-elementer udføres sekventielt (i den rækkefølge de er defineret) synkront (under scriptets download og udførelse tager de ikke hånd om noget andet).
Som standardmetode for at håndtere skript har synkron sekventiel udførsel sin betydning. Dog kræver nogle skript ikke denne behandling, og for sådanne skript kan man bruge async
egenskab forbedrer deres ydeevne. Et typisk eksempel på dette er sporingsskript (tracking script). Disse skript kan rapportere brugernes besøgslog på websiderne, så reklamevirksomheder kan tilpasse og videresende reklamer baseret på brugernes vaner, eller indsamle statistik over websides besøgende til analyse, osv. Disse skript er selvstændige og har generelt ikke brug for at interagere med elementer i HTML-dokumentet. Det har ingen mening at forsinke visning af siden for at vente på, at de er indlæst og sender rapporter til deres servere.
brug async
egenskab, vil browseren downloade og udføre skript asynkront, mens den fortsætter med at analysere HTML's andre elementer (herunder andre script-elementer). Hvis dette anvendes korrekt, kan det betydeligt forbedre den samlede indlæsningsydeevne.
Bemærk:brug async
Egenskabens vigtigste konsekvens er, at skript i siden muligvis ikke længere udføres i den rækkefølge, de er defineret. Derfor er det ikke hensigtsmæssigt at bruge async
egenskab.
Browserunderstøttelse
Tallene i tabellen angiver den første browserversion, der fuldt ud understøtter egenskaben.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
8.0 | 10.0 | 3.6 | 5.1 | 15.0 |