En JavaScript, le mot-clé const
est utilisé pour déclarer une variable constante, ce qui signifie que la variable ne peut pas être réaffectée une fois initialisée. Voici quelques points clés sur l’utilisation const
en JavaScript :
Déclaration et initialisation :
javascriptconst myConstant = 42;
Lorsque vous utilisez const
, vous devez initialiser la variable au moment de la déclaration.
La réaffectation n'est pas autorisée :
javascript const myConstant = 42;
// This will result in an error
myConstant = 20;
Une fois qu'une variable est déclarée à l'aide const
, vous ne pouvez pas la réaffecter.
Portée du bloc : comme let
, const
a une portée de bloc. Cela signifie qu'il n'est accessible que dans le bloc ou l'instruction sur lequel il est défini.
javascript if (true) {
const blockScoped = "I am inside the block";
}
// This will result in an error
console.log(blockScoped);
Constantes d'objet et de tableau : bien que const
empêche la réaffectation de la variable elle-même, il ne rend pas les valeurs d'un objet ou d'un tableau immuables.
javascript const myArray = [1, 2, 3];
myArray.push(4); // This is allowed
const myObject = { key: "value" };
myObject.key = "new value"; // This is allowed
Si vous souhaitez rendre immuables les valeurs d'un objet ou d'un tableau, vous devrez utiliser d'autres techniques comme Object.freeze()
ou des bibliothèques comme Immutable.js.
Utilisation dans les boucles : const
peut être utile dans les boucles pour déclarer des variables de boucle qui ne doivent pas être réaffectées.
javascript for (const i = 0; i < 5; i++) {
// This will result in an error because i cannot be reassigned
}
Constantes en majuscules : il est courant d'utiliser des lettres majuscules pour les variables constantes.
javascript const MY_CONSTANT = 100;
Cela facilite l'identification des constantes dans votre code.
N'oubliez pas que const
ne rend pas la variable ou son contenu véritablement immuable, il empêche simplement la réaffectation de la variable. Si vous souhaitez atteindre l'immuabilité à un niveau plus profond, vous devrez utiliser d'autres techniques ou bibliothèques.