ReferenceError
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.
Объект ReferenceError
представляет ошибку, возникающую при обращении к переменной, которая не существует (или не была инициализирована) в текущей области видимости.
ReferenceError
является сериализуемым объектом, поэтому он может быть клонирован с помощью structuredClone()
или передан между воркерами с использованием postMessage()
.
RangeReferenceErrorError
является подклассом Error
.
Конструктор
ReferenceError()
-
Создаёт новый объект
ReferenceError
.
Свойства экземпляра
Также наследует свойства экземпляра своего родителя Error
.
Эти свойства определены в ReferenceError.prototype
и есть у всех экземпляров ReferenceError
.
ReferenceError.prototype.constructor
-
Функция-конструктор, создающая экземпляр объекта. Для экземпляров
ReferenceError
начальным значением является конструкторReferenceError
. ReferenceError.prototype.name
-
Представляет название типа ошибки. Начальным значением
ReferenceError.prototype.name
является"ReferenceError"
.
Методы экземпляра
Наследует методы экземпляра своего родителя Error
.
Примеры
Перехват ReferenceError
try {
let a = undefinedVariable;
} catch (e) {
console.log(e instanceof ReferenceError); // true
console.log(e.message); // "undefinedVariable is not defined"
console.log(e.name); // "ReferenceError"
console.log(e.stack); // Стек ошибок
}
Создание ReferenceError
try {
throw new ReferenceError("Привет");
} catch (e) {
console.log(e instanceof ReferenceError); // true
console.log(e.message); // "Привет"
console.log(e.name); // "ReferenceError"
console.log(e.stack); // Стек ошибок
}
Спецификации
Specification |
---|
ECMAScript Language Specification # sec-native-error-types-used-in-this-standard-referenceerror |
Совместимость с браузерами
BCD tables only load in the browser