Heim > Web-Frontend > js-Tutorial > Was sind die Unterschiede zwischen let, var oder const?

Was sind die Unterschiede zwischen let, var oder const?

PHPz
Freigeben: 2024-08-22 19:08:45
Original
529 Leute haben es durchsucht

What are the differences between let, var or const?

Variablen, die mit dem Schlüsselwort var deklariert werden, beziehen sich auf die Funktion, in der sie erstellt werden, oder, wenn sie außerhalb einer Funktion erstellt werden, auf das globale Objekt. let und const haben einen Blockbereich, was bedeutet, dass sie nur innerhalb des nächstgelegenen Satzes geschweifter Klammern (Funktion, if-else-Block oder for-Schleife) zugänglich sind.

function foo() {
  // All variables are accessible within functions.
  var bar = 'bar';
  let baz = 'baz';
  const qux = 'qux';

  console.log(bar); // bar
  console.log(baz); // baz
  console.log(qux); // qux
}

console.log(bar); // ReferenceError: bar is not defined
console.log(baz); // ReferenceError: baz is not defined
console.log(qux); // ReferenceError: qux is not defined

if (true) {
  var bar = 'bar';
  let baz = 'baz';
  const qux = 'qux';
}

// var declared variables are accessible anywhere in the function scope.
console.log(bar); // bar
// let and const defined variables are not accessible outside the block they were defined in.
console.log(baz); // ReferenceError: baz is not defined
console.log(qux); // ReferenceError: qux is not defined
Nach dem Login kopieren

var ermöglicht das Hochziehen von Variablen, was bedeutet, dass sie im Code referenziert werden können, bevor sie deklariert werden. let und const lassen dies nicht zu, sondern geben stattdessen einen Fehler aus.

console.log(foo); // undefined

var foo = 'foo';

console.log(baz); // ReferenceError: can't access lexical declaration 'baz' before initialization

let baz = 'baz';

console.log(bar); // ReferenceError: can't access lexical declaration 'bar' before initialization

const bar = 'bar';
Nach dem Login kopieren

Das erneute Deklarieren einer Variablen mit var löst keinen Fehler aus, let und const hingegen schon.

var foo = 'foo';
var foo = 'bar';
console.log(foo); // "bar"

let baz = 'baz';
let baz = 'qux'; // Uncaught SyntaxError: Identifier 'baz' has already been declared
Nach dem Login kopieren

let und const unterscheiden sich darin, dass let die Neuzuweisung des Variablenwerts zulässt, const hingegen nicht.

// This is fine.
let foo = 'foo';
foo = 'bar';

// This causes an exception.
const baz = 'baz';
baz = 'qux';
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen let, var oder const?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage