Const JavaScript

ECMAScript 2015 (ES6)
En 2015, JavaScript a introduit un nouveau mot clé important : const
.
Il est devenu courant de déclarer des tableaux en utilisant const
:
Ne peut pas être réaffecté
Un tableau déclaré avec const
ne peut pas être réaffecté :
Exemple
const voitures = [« Saab », « Volvo », « BMW »];
voitures = [« Toyota », « Volvo », « Audi »]; // ERREUR
Essayez-le vous-même »
Les tableaux ne sont pas des constantes
Le mot clé const
est un peu trompeur.
Il ne définit PAS un tableau constant. Il définit une référence constante à un tableau.
Pour cette raison, nous pouvons toujours modifier les éléments d’un tableau constant.
Les éléments peuvent être réaffectés
Vous pouvez modifier les éléments d’un tableau constant :
Exemple
// Vous pouvez créer un tableau constant :
const voitures = [« Saab », « Volvo », « BMW »];
// Vous pouvez modifier un élément :
voitures[0] = « Toyota » ;
// Vous pouvez ajouter un élément :
voitures.push(« Audi »);
Essayez-le vous-même »
Prise en charge du navigateur
Le const
mot-clé n’est pas pris en charge dans Internet Explorer 10 ou version antérieure.
Le tableau suivant définit les premières versions de navigateur avec prise en charge complète des const
mot-clé:
Chrome 49 | Internet Explorer 11 / Edge | Firefox 36 | Safari 10 | Opéra 36 |
mars 2016 | octobre 2013 | février 2015 | Septembre 2016 | mars 2016 |
Attribué lors de la déclaration
Javascript const
les variables doivent être valorisées lors de leur déclaration :
Signification : Un tableau déclaré avec const
doit être initialisé lors de sa déclaration.
En utilisant const
sans initialiser le tableau est une erreur de syntaxe :
Exemple
Cela ne fonctionnera pas :
voitures constantes ;
voitures = [« Saab », « Volvo », « BMW »];
Tableaux déclarés avec var
peut être initialisé à tout moment.
Vous pouvez même utiliser le tableau avant qu’il ne soit déclaré :
Portée du bloc Const
Un tableau déclaré avec const
a Portée du bloc.
Un tableau déclaré dans un bloc n’est pas identique à un tableau déclaré en dehors du bloc :
Exemple
const voitures = [« Saab », « Volvo », « BMW »];
// Ici les voitures[0] est « Saab »
{
const voitures = [« Toyota », « Volvo », « BMW »];
// Ici les voitures[0] est « Toyota »
}
// Ici les voitures[0] est « Saab »
Essayez-le vous-même »
Un tableau déclaré avec var
n’a pas de portée de bloc :
Exemple
var voitures = [« Saab », « Volvo », « BMW »];
// Ici les voitures[0] est « Saab »
{
var voitures = [« Toyota », « Volvo », « BMW »];
// Ici les voitures[0] est « Toyota »
}
// Ici les voitures[0] est « Toyote »
Essayez-le vous-même »
Vous pouvez en savoir plus sur Block Scope dans le chapitre : JavaScript Scope.
Redéclarer des tableaux
Redéclarer un tableau déclaré avec var
est autorisé n’importe où dans un programme :
Exemple
var voitures = [« Volvo », « BMW »]; // Autorisé
var voitures = [« Toyota », « BMW »]; // Autorisé
voitures = [« Volvo », « Saab »]; // Autorisé
Redéclarer ou réaffecter un tableau à const
dans la même portée ou dans le même bloc, n’est pas autorisé :
Exemple
var voitures = [« Volvo », « BMW »]; // Autorisé
const voitures = [« Volvo », « BMW »]; // Interdit
{
var voitures = [« Volvo », « BMW »]; // Autorisé
const voitures = [« Volvo », « BMW »]; // Interdit
}
Redéclarer ou réaffecter un existant const
tableau, dans la même portée ou dans le même bloc, n’est pas autorisé :
Exemple
const voitures = [« Volvo », « BMW »]; // Autorisé
const voitures = [« Volvo », « BMW »]; // Interdit
var voitures = [« Volvo », « BMW »]; // Interdit
voitures = [« Volvo », « BMW »]; // Interdit
{
const voitures = [« Volvo », « BMW »]; // Autorisé
const voitures = [« Volvo », « BMW »]; // Interdit
var voitures = [« Volvo », « BMW »]; // Interdit
voitures = [« Volvo », « BMW »]; // Interdit
}
Redéclarer un tableau avec const
dans une autre portée, ou dans un autre bloc, est autorisé :
Exemple
const voitures = [« Volvo », « BMW »]; // Autorisé
{
const voitures = [« Volvo », « BMW »]; // Autorisé
}
{
const voitures = [« Volvo », « BMW »]; // Autorisé
}
Référence complète de la baie
Pour une référence Array complète, rendez-vous sur :
Référence complète du tableau JavaScript.
La référence contient des descriptions et des exemples de toutes les propriétés et méthodes Array.
#Const #JavaScript