This page was translated from English by the community.Learn more and join the MDN Web Docs community.
ReferenceError
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
* Some parts of this feature may have varying levels of support.
ОбъектReferenceError представляет ошибку, возникающую при обращении к переменной, которая не существует (или не была инициализирована) в текущей области видимости.
ReferenceError являетсясериализуемым объектом, поэтому он может быть клонирован с помощьюstructuredClone() или передан междуворкерами с использованиемpostMessage().
RangeReferenceErrorError является подклассомError.
In this article
Конструктор
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® 2026 Language Specification> # sec-native-error-types-used-in-this-standard-referenceerror> |