The SyntaxError
object represents an error when trying to interpret syntactically invalid code.
A SyntaxError
is thrown when the JavaScript engine encounters tokens or token order that does not conform to the syntax of the language when parsing code.
new SyntaxError([message[, fileName[, lineNumber]]])
message
fileName
lineNumber
SyntaxError.prototype
SyntaxError
object.The global SyntaxError
contains no methods of its own, however, it does inherit some methods through the prototype chain.
SyntaxError
instancesSyntaxError.prototype.constructor
SyntaxError.prototype.message
SyntaxError
should provide its own message
property, in SpiderMonkey, it inherits Error.prototype.message
.SyntaxError.prototype.name
Error
.SyntaxError.prototype.fileName
Error
.SyntaxError.prototype.lineNumber
Error
.SyntaxError.prototype.columnNumber
Error
.SyntaxError.prototype.stack
Error
.Although the SyntaxError
prototype object does not contain any methods of its own, SyntaxError
instances do inherit some methods through the prototype chain.
SyntaxError
try { eval('hoo bar'); } catch (e) { console.log(e instanceof SyntaxError); // true console.log(e.message); // "missing ; before statement" console.log(e.name); // "SyntaxError" console.log(e.fileName); // "Scratchpad/1" console.log(e.lineNumber); // 1 console.log(e.columnNumber); // 4 console.log(e.stack); // "@Scratchpad/1:2:3\n" }
SyntaxError
try { throw new SyntaxError('Hello', 'someFile.js', 10); } catch (e) { console.log(e instanceof SyntaxError); // true console.log(e.message); // "Hello" console.log(e.name); // "SyntaxError" console.log(e.fileName); // "someFile.js" console.log(e.lineNumber); // 10 console.log(e.columnNumber); // 0 console.log(e.stack); // "@Scratchpad/2:11:9\n" }
Specification | Status | Comment |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Initial definition. |
ECMAScript 5.1 (ECMA-262) The definition of 'SyntaxError' in that specification. | Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'SyntaxError' in that specification. | Standard | |
ECMAScript Latest Draft (ECMA-262) The definition of 'SyntaxError' in that specification. | Living Standard |
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes | 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/SyntaxError