InternalError
非標準: この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。
InternalError
オブジェクト は、 JavaScript エンジンで内部的に発生したエラーを示します。
これは、以下のように何かが大きすぎる時に発生します。
- "switch case が多すぎる"、
- "正規表現内の括弧が多すぎる"、
- "配列の初期化子が大きすぎる"、
- "再帰が深すぎる"。
コンストラクター
InternalError()
-
新しい
InternalError
オブジェクトを生成します。
インスタンスプロパティ
InternalError.prototype.message
-
エラーメッセージです。
Error.prototype.message
から継承しています。 InternalError.prototype.name
-
エラー名です。
Error
から継承しています。 InternalError.prototype.fileName
-
このエラーが発生したファイルのパスです。
Error
から継承しています。 InternalError.prototype.lineNumber
-
このエラーが発生したファイル内の行番号です。
Error
から継承しています。 InternalError.prototype.columnNumber
-
このエラーが発生した行内の桁番号です。
Error
から継承しています。 InternalError.prototype.stack
-
スタックトレースです。
Error
から継承しています。
例
深すぎる再帰
この再帰関数は終了条件によって、10 回実行されます。
js
function loop(x) {
if (x >= 10) {
// "x >= 10" is the exit condition
return;
}
// do stuff
loop(x + 1); // the recursive call
}
loop(0);
この条件を非常に大きな値に設定した場合、動作しなくなります。
js
function loop(x) {
if (x >= 1000000000000) return;
// do stuff
loop(x + 1);
}
loop(0);
// InternalError: too much recursion
詳しくは、 InternalError: too much recursion. を参照してください。
仕様書
仕様の一部ではありません。
ブラウザーの互換性
BCD tables only load in the browser