"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Quelles sont les différences entre let, var ou const ?

Quelles sont les différences entre let, var ou const ?

Publié le 2024-08-27
Parcourir:953

What are the differences between let, var or const?

Les variables déclarées à l'aide du mot-clé var sont limitées à la fonction dans laquelle elles sont créées, ou si elles sont créées en dehors de toute fonction, à l'objet global. let et const ont une portée de bloc, ce qui signifie qu'ils ne sont accessibles que dans l'ensemble d'accolades le plus proche (fonction, bloc if-else ou boucle for).

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

var permet de hisser les variables, ce qui signifie qu'elles peuvent être référencées dans le code avant d'être déclarées. let et const ne le permettront pas, mais généreront une erreur.

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';

Redéclarer une variable avec var ne générera pas d'erreur, mais let et const le feront.

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

let baz = 'baz';
let baz = 'qux'; // Uncaught SyntaxError: Identifier 'baz' has already been declared

let et const diffèrent en ce sens que let permet de réaffecter la valeur de la variable alors que const ne le fait pas.

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

// This causes an exception.
const baz = 'baz';
baz = 'qux';
Déclaration de sortie Cet article est reproduit sur : https://dev.to/nurmuhammadd/what-are-the-differences-between-let-var-or-const-1597?1 En cas de violation, veuillez contacter [email protected] pour le supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3