--- title: 'SyntaxError: "x" is a reserved identifier' slug: Web/JavaScript/Reference/Errors/Reserved_identifier tags: - Erreurs - JavaScript - SyntaxError translation_of: Web/JavaScript/Reference/Errors/Reserved_identifier original_slug: Web/JavaScript/Reference/Erreurs/Reserved_identifier ---
SyntaxError: The use of a future reserved word for an identifier is invalid (Edge) SyntaxError: "x" is a reserved identifier (Firefox) SyntaxError: Unexpected reserved word (Chrome)
{{jsxref("SyntaxError")}}
Les mots-clés réservés lèveront une exception s'ils sont utilisés en tant qu'identifiants. Voici les mots-clés réservés en mode strict et en mode sloppy :
enumVoici les mots-clés uniquement réservés en mode strict :
implementsinterfacepackageprivateprotectedpublicstaticL'identifiant enum est réservé dans les différents cas :
var enum = { RED: 0, GREEN: 1, BLUE: 2 };
// SyntaxError: enum is a reserved identifier
En mode strict, d'autres mots-clés sont réservés :
"use strict"; var package = ["pomme", "poire", "pêches"]; // SyntaxError: package is a reserved identifier
Pour ne pas avoir l'erreur, il faudra renommer les variables :
var enumCouleurs = { RED: 0, GREEN: 1, BLUE: 2 };
var liste = ["pomme", "poire", "pêches"];
Si vous utilisez un ancien navigateur qui n'implémente pas let ou class, vous devrez mettre à jour votre navigateur :
"use strict";
class DocArchiver {}
// SyntaxError: class is a reserved identifier
// (lève une exception dans les anciens navigateurs
// tels que Firefox 44 et les versions antérieures)