SyntaxError
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Объект SyntaxError
представляет ошибку, возникающую при попытке интерпретировать синтаксически неправильный код. Это происходит, когда движок JavaScript при синтаксическом анализе кода обнаруживает токены или порядок токенов, не соответствующие синтаксису языка.
SyntaxError
является сериализуемым объектом, поэтому он может быть клонирован с помощью structuredClone()
или передан между воркерами с использованием postMessage()
.
SyntaxError
является подклассом Error
.
Конструктор
SyntaxError()
-
Создаёт новый объект
SyntaxError
.
Свойства экземпляра
Также наследует свойства своего родителя Error
.
Эти свойства определены в SyntaxError.prototype
и есть у всех экземпляров SyntaxError
.
SyntaxError.prototype.constructor
-
Функция-конструктор, создающая экземпляр объекта. Для экземпляров
SyntaxError
начальным значением является конструкторSyntaxError
. SyntaxError.prototype.name
-
Представляет название типа ошибки. Начальным значением
SyntaxError.prototype.name
является"SyntaxError"
.
Методы экземпляра
Наследует методы своего родителя Error
.
Примеры
Перехват SyntaxError
try {
eval("hoo bar");
} catch (e) {
console.log(e instanceof SyntaxError); // true
console.log(e.message);
console.log(e.name); // "SyntaxError"
console.log(e.stack); // Стек ошибок
}
Создание SyntaxError
try {
throw new SyntaxError("Привет");
} catch (e) {
console.log(e instanceof SyntaxError); // true
console.log(e.message); // "Привет"
console.log(e.name); // "SyntaxError"
console.log(e.stack); // Стек ошибок
}
Спецификации
Specification |
---|
ECMAScript Language Specification # sec-native-error-types-used-in-this-standard-syntaxerror |
Совместимость с браузерами
BCD tables only load in the browser