Les variables en JavaScript sont des conteneurs pour stocker des données. Elles jouent un rôle crucial dans les programmes, permettant de manipuler et de conserver des valeurs tout au long de l’exécution d’un script. JavaScript offre plusieurs manières de déclarer des variables, et chacune a ses propres caractéristiques et utilisations.
Déclaration des Variables
JavaScript fournit trois façons principales de déclarer des variables : var
, let
, et const
.
1. var
Historique : Introduit dans les premières versions de JavaScript. Avant ES6 (ECMAScript 2015), var
était la seule méthode pour déclarer des variables.
Portée (Scope) : La portée de var
est fonctionnelle ou globale. Cela signifie que les variables déclarées avec var
sont accessibles dans toute la fonction où elles ont été définies ou dans tout le script si elles sont définies globalement.
Hoisting : Les variables déclarées avec var
sont « hoisted » (remontées) au début de leur portée. Cela signifie que vous pouvez les utiliser avant leur déclaration dans le code.
console.log(x); // undefined
var x = 5;
console.log(x); // 5
2. let
Introduction : Introduit en ES6 pour résoudre certains problèmes avec var
.
Portée (Scope) : La portée de let
est le bloc où elle est définie (déclaration dans des blocs {}
comme dans les boucles ou les conditions).
Hoisting : Les variables déclarées avec let
sont également hoisted, mais ne sont pas initialisées. Accéder à ces variables avant leur déclaration entraîne une erreur.
// Exemple de portée de bloc
if (true) {
let y = 10;
console.log(y); // 10
}
console.log(y); // Erreur : y is not defined
3. const
Introduction : Introduit en ES6 pour les variables dont la valeur ne doit pas changer après leur initialisation.
Portée (Scope) : La portée est le bloc où elle est définie, tout comme avec let
.
Hoisting : Comme let
, les variables déclarées avec const
sont hoisted mais ne sont pas initialisées.
const z = 15;
console.log(z); // 15
z = 20; // Erreur : Assignment to constant variable