Heim  >  Artikel  >  Web-Frontend  >  let, const , var Unterschied in Javascript?

let, const , var Unterschied in Javascript?

WBOY
WBOYOriginal
2024-08-13 19:03:51958Durchsuche

let, const , var difference in Javascript?

In JavaScript werden let, const und var zum Deklarieren von Variablen verwendet, sie unterscheiden sich jedoch in dreierlei Hinsicht:

1. Geltungsbereich
2. Neuzuweisung
3. Heben

1.Geltungsbereich:

var ist ein Funktionsumfang, das heißt, wir greifen überall innerhalb der Funktion auf die Variable var zu. Wenn wir versuchen, außerhalb der Funktion darauf zuzugreifen, wird der Fehler undefiniert angezeigt
Beispiel:-

function demo(){
  if(true){
    var n = 3;
  }
  console.log(n)
}
console.log(n) //ReferenceError: n is not defined
demo();

let & const sind Blöcke, was bedeutet, dass wir nur innerhalb des Gültigkeitsbereichs auf sie zugreifen können, andernfalls wird ein undefinierter Fehler angezeigt
Beispiel:-

function demo(){
  if(true){
    let n = 3;
    const m = 5;
     console.log(n) // 3
     console.log(m) // 5
  }
  console.log(n) //ReferenceError: n is not defined
  console.log(m) //ReferenceError: n is not defined
}
console.log(n) //ReferenceError: n is not defined
console.log(m) //ReferenceError: n is not defined
demo();

2. Neuzuweisung

  • var: Kann innerhalb seines Geltungsbereichs neu zugewiesen und neu deklariert werden.
  • let: Kann innerhalb seines Geltungsbereichs neu zugewiesen, aber nicht neu deklariert werden.
  • const: Kann nicht neu zugewiesen oder neu deklariert werden. Die Variable selbst ist unveränderlich, obwohl Objekte und Arrays, die const zugewiesen sind, weiterhin geändert werden können .

3. Heben

  • var wird angehoben, was bedeutet, dass auf sie vor ihrer Deklaration zugegriffen werden kann, ihr Wert jedoch undefiniert bleibt, bis der Code die Zeile erreicht, in der die Variable initialisiert wird.
  • let wird ebenfalls hochgezogen, aber im Gegensatz zu var kann aufgrund der „zeitlichen Totzone“ nicht vor der Deklaration darauf zugegriffen werden.
  • Variablen, die mit const deklariert wurden, werden ebenfalls angehoben, müssen jedoch zum Zeitpunkt der Deklaration initialisiert werden und können nicht neu zugewiesen werden. Wenn es sich bei der Variablen jedoch um ein Objekt oder Array handelt, kann ihr Inhalt geändert werden (z. B. durch Hinzufügen oder Entfernen von Elementen aus einem Array).
// var example
console.log(a); // undefined (due to hoisting)
var a = 10;
console.log(a); // 10

// let example
console.log(b); // ReferenceError: Cannot access 'b' before initialization
let b = 20;
console.log(b); // 20

// const example
const c = 30;
c = 40; // TypeError: Assignment to constant variable

Das obige ist der detaillierte Inhalt vonlet, const , var Unterschied in Javascript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn