Zum Inhalt springen
uencoder

Hoisting

Hoisting ist JavaScripts Verhalten, Variablen- und Funktionsdeklarationen an den Anfang ihres Gültigkeitsbereichs zu verschieben; var- und function-Deklarationen werden gehoistet.

Zweck

Das Hoisting-Verhalten von JS-Variablen- und Funktionsdeklarationen verstehen, um Verweise auf nicht initialisierte Variablen zu vermeiden.

Mechanismus

var-Deklarationen werden gehoistet, aber nicht ihre Zuweisungen (der Wert ist undefined). function-Deklarationen werden vollständig gehoistet (nutzbar). let/const-Deklarationen werden ebenfalls gehoistet, fallen aber in die zeitliche tote Zone (TDZ) und werfen bei Zugriff vor der Initialisierung einen Fehler.

Anwendungsfälle

  • JavaScript-Verständnis
  • Debugging
  • Code-Stil

References