JavaScript führte in ECMAScript 6 das Schlüsselwort let ein und bietet einen detaillierteren Bereich für den Vergleich von Variablen zur traditionellen Variable.
Der Hauptunterschied liegt in der Variable Umfang. Mit var deklarierte Variablen haben einen Gültigkeitsbereich auf Funktionsebene, was bedeutet, dass auf sie überall innerhalb der umschließenden Funktion zugegriffen werden kann. Andererseits haben mit let deklarierte Variablen einen Gültigkeitsbereich auf Blockebene, was bedeutet, dass auf sie nur innerhalb des unmittelbaren Blocks zugegriffen werden kann, in dem sie definiert sind.
Block-Scoping:
Temporal Dead Zone:
Beachten Sie den folgenden Codeausschnitt:
function run() { var foo = "Foo"; let bar = "Bar"; console.log(foo, bar); // Foo Bar { var moo = "Mooo" let baz = "Bazz"; console.log(moo, baz); // Mooo Bazz } console.log(moo); // Mooo console.log(baz); // ReferenceError } run();
In diesem Beispiel ist foo (deklariert mit var). Der Zugriff erfolgt in der gesamten Funktion, während auf bar (deklariert mit let) nur innerhalb des verschachtelten Blocks zugegriffen werden kann. Der Versuch, auf baz außerhalb des Blocks zuzugreifen, führt aufgrund seines Gültigkeitsbereichs auf Blockebene zu einem ReferenceError.
Hinweis: let wird in den meisten modernen JavaScript-Entwicklungen aufgrund seines strengeren und erweiterten Gültigkeitsbereichs gegenüber var bevorzugt Lesbarkeit des Codes.
Das obige ist der detaillierte Inhalt von„let' vs. „var' in JavaScript: Was sind die Hauptunterschiede im Variablenbereich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!