在线文档教程
JavaScript
错误 | Errors

ReferenceError

ReferenceError

The ReferenceError object represents an error when a non-existent variable is referenced.

语法

new ReferenceError([message[, fileName[, lineNumber]]])

参数

message可选。描述可读的错误信息fileName可选。包含引起异常代码的文件名lineNumber可选。引起异常的代码行号

描述

当你尝试引用一个未被定义的变量时,将会抛出一个 ReferenceError

属性

ReferenceError.prototypeAllows the addition of properties to anReferenceErrorobject.

方法

全局的 ReferenceError本身并不包含有方法,但是他可以从原型链上继承一些方法

ReferenceError实例

属性

ReferenceError.prototype.constructorSpecifies the function that created an instance's prototype.

方法

尽管ReferenceError原型对象本身不包含任何方法,但ReferenceError实例通过原型链继承了一些方法。

示例

捕获一个 ReferenceError

try { var 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.fileName // "Scratchpad/1" console.log(e.lineNumber // 2 console.log(e.columnNumber // 6 console.log(e.stack // "@Scratchpad/2:2:7\n" }

创建一个 ReferenceError

try { throw new ReferenceError('Hello', 'someFile.js', 10 } catch (e) { console.log(e instanceof ReferenceError // true console.log(e.message // "Hello" console.log(e.name // "ReferenceError" console.log(e.fileName // "someFile.js" console.log(e.lineNumber // 10 console.log(e.columnNumber // 0 console.log(e.stack // "@Scratchpad/2:2:9\n" }

规范

SpecificationStatusComment
ECMAScript 3rd Edition (ECMA-262)StandardInitial definition.
ECMAScript 5.1 (ECMA-262)The definition of 'ReferenceError' in that specification.Standard
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'ReferenceError' in that specification.Standard
ECMAScript Latest Draft (ECMA-262)The definition of 'ReferenceError' in that specification.Living Standard

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)