ReferenceError

**ReferenceError** 对象表示在当前作用域中引用不存在(或尚未初始化)的变量时发生的错误。

ReferenceError 是一个可序列化对象,因此可以使用structuredClone() 克隆它,或者使用postMessage()工作线程 之间复制它。

ReferenceErrorError 的子类。

构造函数

ReferenceError()

创建一个新的 ReferenceError 对象。

实例属性

还继承了其父类Error 的实例属性.

这些属性在 ReferenceError.prototype 上定义,并由所有 ReferenceError 实例共享。

ReferenceError.prototype.constructor

创建实例对象的构造函数。对于 ReferenceError 实例,初始值为ReferenceError 构造函数。

ReferenceError.prototype.name

表示错误类型的名称。对于 ReferenceError.prototype.name,初始值为 "ReferenceError"

实例方法

继承了其父类Error 的实例方法.

示例

捕获 ReferenceError

js
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); // Stack of the error
}

创建 ReferenceError

js
try {
  throw new ReferenceError("Hello");
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message); // "Hello"
  console.log(e.name); // "ReferenceError"
  console.log(e.stack); // Stack of the error
}

规范

规范
ECMAScript 语言规范
# sec-native-error-types-used-in-this-standard-referenceerror

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅