The SyntaxError
constructor creates a new error object that represents an error when trying to interpret syntactically invalid code.
SyntaxError() constructor
Syntax
new SyntaxError() new SyntaxError(message) new SyntaxError(message, fileName) new SyntaxError(message, fileName, lineNumber)
Parameters
-
message
Optional -
Human-readable description of the error
-
fileName
Optional -
The name of the file containing the code that caused the exception
-
lineNumber
Optional -
The line number of the code that caused the exception
Examples
Catching a SyntaxError
try { eval('hoo bar'); } catch (e) { console.error(e instanceof SyntaxError); console.error(e.message); console.error(e.name); console.error(e.fileName); console.error(e.lineNumber); console.error(e.columnNumber); console.error(e.stack); }
Creating a SyntaxError
try { throw new SyntaxError('Hello', 'someFile.js', 10); } catch (e) { console.error(e instanceof SyntaxError); // true console.error(e.message); // Hello console.error(e.name); // SyntaxError console.error(e.fileName); // someFile.js console.error(e.lineNumber); // 10 console.error(e.columnNumber); // 0 console.error(e.stack); // @debugger eval code:3:9 }
Specifications
Browser compatibility
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | Deno | Node.js | |
SyntaxError |
1
|
12
|
1
|
5.5
|
5
|
1
|
1
|
18
|
4
|
10.1
|
1
|
1.0
|
1.0
|
0.10.0
|
See also
© 2005–2022 MDN 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/SyntaxError