--- title: InternalError slug: Web/JavaScript/Reference/Global_Objects/InternalError tags: - Class - InternalError - JavaScript - Object translation_of: Web/JavaScript/Reference/Global_Objects/InternalError ---
{{JSRef}} {{non-standard_header}}

InternalError オブジェクト は、 JavaScript エンジンで内部的に発生したエラーを示します。

これは、以下のように何かが大きすぎる時に発生します。

コンストラクター

{{jsxref("InternalError/InternalError", "InternalError()")}}
新しい InternalError オブジェクトを生成します。

インスタンスプロパティ

{{jsxref("Error.prototype.message", "InternalError.prototype.message")}}
エラーメッセージです。 {{jsxref("Error.prototype.message")}} から継承しています。
{{jsxref("Error.prototype.name", "InternalError.prototype.name")}}
エラー名です。 {{jsxref("Error")}} から継承しています。
{{jsxref("Error.prototype.fileName", "InternalError.prototype.fileName")}}
このエラーが発生したファイルのパスです。 {{jsxref("Error")}} から継承しています。
{{jsxref("Error.prototype.lineNumber", "InternalError.prototype.lineNumber")}}
このエラーが発生したファイル内の行番号です。 {{jsxref("Error")}} から継承しています。
{{jsxref("Error.prototype.columnNumber", "InternalError.prototype.columnNumber")}}
このエラーが発生した行内の桁番号です。 {{jsxref("Error")}} から継承しています。
{{jsxref("Error.prototype.stack", "InternalError.prototype.stack")}}
スタックトレースです。 {{jsxref("Error")}} から継承しています。

深すぎる再帰

この再帰関数は終了条件によって、10回実行されます。

function loop(x) {
  if (x >= 10) // "x >= 10" is the exit condition
    return;
  // do stuff
  loop(x + 1); // the recursive call
}
loop(0);

この条件を非常に大きな値に設定した場合、動作しなくなります。

function loop(x) {
  if (x >= 1000000000000)
    return;
  // do stuff
  loop(x + 1);
}
loop(0);

// InternalError: too much recursion

詳しくは、 InternalError: too much recursion. を参照してください。

仕様書

仕様の一部ではありません。

ブラウザーの互換性

{{Compat("javascript.builtins.InternalError")}}

関連情報