SyntaxError: "x" является зарезервированным идентификатором
Исключение JavaScript "variable является зарезервированным идентификатором" возникает, когда зарезервированные ключевые слова используются в качестве идентификаторов.
Сообщение
SyntaxError: Unexpected reserved word (V8-based) SyntaxError: implements is a reserved identifier (Firefox) SyntaxError: Cannot use the reserved word 'implements' as a variable name. (Safari)
Тип ошибки
Что пошло не так?
Возникает исключение, если зарезервированные ключевые слова используются в качестве идентификаторов. Они зарезервированы в строгом режиме и нестрогом режиме:
enum
Следующие зарезервированы только тогда, когда они находятся в коде строгого режима:
implementsinterfaceletpackageprivateprotectedpublicstatic
Примеры
Зарезервированные ключевые слова строгого и нестрогого режимов
Идентификатор enum обычно зарезервирован.
const enum = { RED: 0, GREEN: 1, BLUE: 2 };
// SyntaxError: enum is a reserved identifier
В коде строгого режима зарезервировано больше идентификаторов.
"use strict"; const package = ["potatoes", "rice", "fries"]; // SyntaxError: package is a reserved identifier
Вам нужно переименовать эти переменные.
const colorEnum = { RED: 0, GREEN: 1, BLUE: 2 };
const list = ["potatoes", "rice", "fries"];
Обновление устаревших браузеров
Например, если вы используете устаревший браузер, который еще не реализует let или class, вам следует обновиться до более новой версии браузера, которая поддерживает эти новые возможности языка.
"use strict";
class DocArchiver {}
// SyntaxError: class is a reserved identifier
// (throws in older browsers only, e.g. Firefox 44 and older)
Смотрите также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Reserved_identifier