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

関連情報