Verschieben

Verhalten vergleichen

AttributHerunterladenAusführungHTML-AnalyseHauptrisiko
KeinerBlöckeSofortPausiertLangsames anfängliches Rendern
AsynchronParallelso schnell wie möglichPausiert beim HerunterladenRennbedingungen
VerschiebenParallelNach HTMLFortsetzungVerzögerte Funktionalität

Ausführungsreihenfolge: Asynchron, Zurückgestellt und Beides

Das Verständnis der Ausführungsreihenfolge für Skripte mit unterschiedlichen Attributen ist entscheidend für die Verwaltung von Abhängigkeiten und die Gewährleistung der ordnungsgemäßen Funktionalität. So funktioniert es:

  1. Reguläre Skripte (nicht asynchron oder verzögert):

  2. Asynchrone Skripte:

  3. Skripte zurückstellen:

  4. Skripte mit Async und Defer:

Beispiel für eine Ausführungsreihenfolge:

Mögliche Ausführungsreihenfolge:

  1. 1.js (blockiert das Parsen)
  2. 3.js oder 2.js (je nachdem, was zuerst heruntergeladen wird)
  3. 2.js oder 3.js (je nachdem, was als nächstes heruntergeladen wird)
  4. 4.js
  5. 5.js

Beachten Sie, dass 2 und 3 in beliebiger Reihenfolge oder sogar vor 1 ausgeführt werden können, wenn das Herunterladen von 1.js länger dauert.

Best Practices

  1. Verwenden Sie Async für unabhängige Skripte wie Analysen.
  2. Verwenden Sie defer für Skripte, die von DOM oder anderen Skripten abhängen.
  3. Platzieren Sie Skripte asynchron im oder verschieben Sie sie, um den Download früher zu starten.
  4. Berücksichtigen Sie bei kritischen Skripten Inline-Skripte im .

Browser-Unterstützung

Sowohl Async als auch Defer werden in modernen Browsern weitgehend unterstützt. Erwägen Sie bei älteren Browsern die Verwendung eines Skriptladeprogramms oder das Platzieren von Skripts am Ende des .

","image":"http://www.luping.net/uploads/20241009/1728469445670659c5d48f7.jpg","datePublished":"2024-11-08T07:51:11+08:00","dateModified":"2024-11-08T07:51:11+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Beherrschen von Skript-Tags: Verwenden von Async und Defer für eine präzise Skriptsteuerung

Beherrschen von Skript-Tags: Verwenden von Async und Defer für eine präzise Skriptsteuerung

Veröffentlicht am 08.11.2024
Durchsuche:147

Mastering Script Tags: Using Async and Defer for Precise Script Control

In der Welt der Webentwicklung ist die Optimierung der Seitenladezeiten von entscheidender Bedeutung. Zwei leistungsstarke Attribute des

Die Grundlagen: Wie Skripte geladen werden

Wenn ein Browser auf ein

  1. Pausiert die HTML-Analyse
  2. Ladet das Skript herunter
  3. Führt das Skript aus
  4. Setzt die HTML-Analyse fort

Dieser Vorgang kann das Rendern von Seiten verlangsamen, insbesondere bei großen Skripten oder langsamen Verbindungen. Darüber hinaus kann es zu Fehlern kommen, wenn das Skript ausgeführt wird, bevor bestimmte HTML-Elemente vollständig geladen sind, was häufig der Fall ist, wenn das Skript nicht richtig im Dokument platziert ist.

Async and Defer: Ein zweischneidiges Schwert

Asynchron

  • Was es tut: Lädt das Skript asynchron herunter, während die HTML-Analyse fortgesetzt wird.
  • Bei der Ausführung: Sobald es heruntergeladen ist, wird die HTML-Analyse angehalten.
  • Wenn es verwendet wird: Unabhängige Skripte, die nicht auf andere Skripte oder DOM-Inhalte angewiesen sind.
  • Vorbehalt: Kann außerhalb der Reihenfolge ausgeführt werden, wodurch möglicherweise Abhängigkeiten unterbrochen werden.

Verschieben

  • Was es tut: Lädt das Skript herunter, während die HTML-Analyse fortgesetzt wird.
  • Bei der Ausführung: Nachdem die HTML-Analyse abgeschlossen ist, aber vor dem DOMContentLoaded-Ereignis.
  • Wenn es verwendet wird: Skripte, die auf DOM-Inhalten basieren oder in einer bestimmten Reihenfolge ausgeführt werden müssen.
  • Vorbehalt: Kann die Ausführung kritischer Funktionen verzögern.

Verhalten vergleichen

Attribut Herunterladen Ausführung HTML-Analyse Hauptrisiko
Keiner Blöcke Sofort Pausiert Langsames anfängliches Rendern
Asynchron Parallel so schnell wie möglich Pausiert beim Herunterladen Rennbedingungen
Verschieben Parallel Nach HTML Fortsetzung Verzögerte Funktionalität

Ausführungsreihenfolge: Asynchron, Zurückgestellt und Beides

Das Verständnis der Ausführungsreihenfolge für Skripte mit unterschiedlichen Attributen ist entscheidend für die Verwaltung von Abhängigkeiten und die Gewährleistung der ordnungsgemäßen Funktionalität. So funktioniert es:

  1. Reguläre Skripte (nicht asynchron oder verzögert):

    • In der Reihenfolge ausführen, in der sie im Dokument erscheinen.
    • Blockieren Sie die HTML-Analyse, bis sie heruntergeladen und ausgeführt werden.
  2. Asynchrone Skripte:

    • Parallel herunterladen und ausführen, sobald sie verfügbar sind.
    • Keine garantierte Ausführungsreihenfolge; Sie werden ausgeführt, sobald sie heruntergeladen werden.
    • Kann ausgeführt werden, bevor das DOM vollständig geladen ist.
  3. Skripte zurückstellen:

    • Parallel herunterladen, aber erst ausführen, nachdem die HTML-Analyse abgeschlossen ist.
    • In der Reihenfolge ausführen, in der sie im Dokument erscheinen.
    • Vor dem DOMContentLoaded-Ereignis ausführen.
  4. Skripte mit Async und Defer:

    • Das Async-Attribut hat in modernen Browsern Vorrang.
    • In älteren Browsern, die Async nicht unterstützen, greifen sie auf ein verzögertes Verhalten zurück.

Beispiel für eine Ausführungsreihenfolge:

Mögliche Ausführungsreihenfolge:

  1. 1.js (blockiert das Parsen)
  2. 3.js oder 2.js (je nachdem, was zuerst heruntergeladen wird)
  3. 2.js oder 3.js (je nachdem, was als nächstes heruntergeladen wird)
  4. 4.js
  5. 5.js

Beachten Sie, dass 2 und 3 in beliebiger Reihenfolge oder sogar vor 1 ausgeführt werden können, wenn das Herunterladen von 1.js länger dauert.

Best Practices

  1. Verwenden Sie Async für unabhängige Skripte wie Analysen.
  2. Verwenden Sie defer für Skripte, die von DOM oder anderen Skripten abhängen.
  3. Platzieren Sie Skripte asynchron im oder verschieben Sie sie, um den Download früher zu starten.
  4. Berücksichtigen Sie bei kritischen Skripten Inline-Skripte im .

Browser-Unterstützung

Sowohl Async als auch Defer werden in modernen Browsern weitgehend unterstützt. Erwägen Sie bei älteren Browsern die Verwendung eines Skriptladeprogramms oder das Platzieren von Skripts am Ende des

.
Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/umairian/mastering-script-tags-using-async-and-defer-for-precise-script-control-d9n?1 Bei Verstößen wenden Sie sich bitte an Study_golang @163.com löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3