このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
SyntaxError
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
SyntaxError オブジェクトは、構文的に不正なコードを解釈しようとした場合のエラーを表します。これは、 JavaScript エンジンが、コードを解析中に言語の構文に従わないトークンまたはトークンの順序に遭遇した場合に発生します。
In this article
コンストラクター
SyntaxError()新しい
SyntaxErrorオブジェクトを生成します。
インスタンスプロパティ
SyntaxError.prototype.messageエラーメッセージです。 ECMA-262 において
SyntaxErrorは自身のmessageプロパティを提供するべきとされていますが、SpiderMonkey ではError.prototype.messageを継承しています。SyntaxError.prototype.nameエラー名です。
Errorから継承しています。SyntaxError.prototype.fileNameこのエラーが発生したファイルのパスです。
Errorから継承しています。SyntaxError.prototype.lineNumberこのエラーが発生したファイル内の行番号です。
Errorから継承しています。SyntaxError.prototype.columnNumberこのエラーが発生した行内の桁数です。
Errorから継承しています。SyntaxError.prototype.stackスタックトレースです。
Errorから継承しています。
例
>SyntaxError のキャッチ
js
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);}SyntaxError の生成
js
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}仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-native-error-types-used-in-this-standard-syntaxerror> |