MEILLEUR SITE POUR LES DÉVELOPPEURS WEB

Basic JavaScript

JS Tutorial JS Syntax JS Variables JS Operators JS If Conditions JS Loops JS Strings JS Numbers JS Functions JS Objects JS Dates JS Arrays JS Sets JS Maps JS Math JS RegExp JS Data Types JS Errors JS Debugging JS Events JS Programming JS References JS UTF-8 Characters

JS Advanced

JS Versions JS Functions JS Objects JS Classes JS Iterations JS Promises JS Modules JS HTML DOM JS Windows JS Web API JS AJAX JS JSON JS jQuery JS Graphics JS Examples JS Objects

JavaScript. W3Schools en français. Cours pour débutants

En Ua Es De Ru

Mot-clé JavaScript Let

Le mot clé let a été introduit dans ES6 (2015).

Les variables définies avec let ne peuvent pas être redéclarées.

Les variables définies avec let doivent être déclarées avant utilisation.

Les variables définies avec let avoir une portée de bloc.

Ne peut pas être redéclaré

Les variables définies avec let ne peuvent pas être redéclarées.

Vous ne pouvez pas redéclarer accidentellement une variable.

Avec let vous ne pouvez pas faire ceci :

Exemple

let x = "John Doe";

let x = 0;

// SyntaxError: 'x' has already been declared

Avec var vous pouvez :

Exemple

var x = "John Doe";

var x = 0;

Portée du bloc

Avant ES6 (2015), JavaScript n'avait qu'une portée globale et une portée des fonctions.

ES6 a introduit deux nouveaux mots clés JavaScript importants : let et const.

Ces deux mots clés fournissent la Portée du bloc en JavaScript.

Les variables déclarées à l'intérieur d'un bloc { } ne sont pas accessibles depuis l'extérieur du bloc :

Exemple

{
  let x = 2;
}
// x ne peut PAS être utilisé ici

Les variables déclarées avec le mot-clé var NE PEUVENT PAS avoir une portée de bloc.

Les variables déclarées à l'intérieur d'un bloc { } sont accessibles depuis l'extérieur du bloc.

Exemple

{
  var x = 2;
}
// x PEUT être utilisé ici

Redéclarer des variables

Redéclarer une variable à l'aide du mot-clé var peut poser des problèmes.

Redéclarer une variable à l'intérieur d'un bloc redéclarera également la variable à l'extérieur du bloc :

Exemple

var x = 10;
// Ici x vaut 10

{
var x = 2;
// Ici x vaut 2
}

// Ici x vaut 2
Try it Yourself »

Redéclarer une variable à l'aide du mot-clé let peut résoudre ce problème.

Redéclarer une variable à l'intérieur d'un bloc ne redéclarera pas la variable à l'extérieur du bloc :

Exemple

let x = 10;
// Ici x vaut 10

{
let x = 2;
// Ici x vaut 2
}

// Ici x vaut 10
Try it Yourself »

Prise en charge du navigateur

Le mot-clé let n'est pas entièrement pris en charge dans Internet Explorer 11 ou version antérieure.

Le tableau suivant définit les premières versions de navigateur prenant entièrement en charge le mot-clé let :

Chrome 49 Edge 12 Firefox 44 Safari 11 Opera 36
Mar, 2016 Jul, 2015 Jan, 2015 Sep, 2017 Mar, 2016

Redéclarer

La redéclaration d'une variable JavaScript avec var est autorisée n'importe où dans un programme :

Exemple

var x = 2;
// Maintenant x vaut 2

var x = 3;
// Maintenant x vaut 3
Try it Yourself »

Avec let, la redéclaration d'une variable dans le même bloc n'est PAS autorisée :

Exemple

var x = 2;    // Autorisé
let x = 3;    // Non autorisé

{
let x = 2;    // Autorisé
let x = 3     // Non autorisé
}

{
let x = 2;    // Autorisé
var x = 3     // Non autorisé
}

Redéclarer une variable avec let, dans un autre bloc, EST autorisé :

Exemple

let x = 2;    // Autorisé

{
let x = 3;    // Autorisé
}

{
let x = 4;    // Autorisé
}
Try it Yourself »

Let Levage

Les variables définies avec var sont hissées vers le haut et peuvent être initialisées à tout moment.

Signification : Vous pouvez utiliser la variable avant qu'elle ne soit déclarée :

Exemple

C'est OK :

carName = "Volvo";
var carName;
Try it Yourself »

Si vous souhaitez en savoir plus sur le levage, étudiez le chapitre Levage JavaScript.

Les variables définies avec let sont également hissées en haut du bloc, mais non initialisées.

Signification : L'utilisation d'une variable let avant qu'elle ne soit déclarée entraînera un ReferenceError:

Exemple

carName = "Saab";
let carName = "Volvo";
Try it Yourself »


Commentaires