The ReferenceError
object represents an error when a non-existent variable is referenced.
new ReferenceError([message[, fileName[, lineNumber]]])
message
fileName
lineNumber
A ReferenceError
is thrown when trying to dereference a variable that has not been declared.
ReferenceError.prototype
ReferenceError
object.ReferenceError
instancesReferenceError.prototype.constructor
ReferenceError.prototype.message
ReferenceError
should provide its own message
property, in SpiderMonkey, it inherits Error.prototype.message
.ReferenceError.prototype.name
Error
.ReferenceError.prototype.fileName
Error
.ReferenceError.prototype.lineNumber
Error
.ReferenceError.prototype.columnNumber
Error
.ReferenceError.prototype.stack
Error
.Although the ReferenceError
prototype object does not contain any methods of its own, ReferenceError
instances do inherit some methods through the prototype chain.
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" }
Specification | Status | Comment |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Initial 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. | Draft |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | Yes | Yes | 1 | Yes | Yes | Yes |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | Yes | Yes | Yes | 4 | Yes | Yes | Yes |
Server | |
---|---|
Node.js | |
Basic support | Yes |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ReferenceError