このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

InternalError

非標準: この機能は標準化されていません。非標準の機能はブラウザーの対応が限られ、将来的に変更または削除される可能性があるため、本番環境での使用は推奨されません。ただし、標準の選択肢が存在しない特定のケースでは、有効な代替手段となる場合があります。

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

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

  • "switch case が多すぎる"
  • "正規表現内の括弧が多すぎる"
  • "配列の初期化子が大きすぎる"
  • "再帰が深すぎる"

InternalErrorError のサブクラスです。

コンストラクター

InternalError()

新しい InternalError オブジェクトを生成します。

インスタンスプロパティ

親である Error から継承したプロパティもあります。

これらのプロパティは InternalError.prototype で定義されており、すべての InternalError インスタンスで共有されます。

InternalError.prototype.constructor

このインスタンスオブジェクトを作成したコンストラクター関数です。InternalError のインスタンスでは、初期値は InternalError コンストラクターです。

InternalError.prototype.name

エラーの種類の名前を表します。InternalError.prototype.name の場合、初期値は "InternalError" です。

インスタンスメソッド

親である Error から継承したメソッドがあります

深すぎる再帰

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

js
function loop(x) {
  // "x >= 10" is the exit condition
  if (x >= 10) 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. を参照してください。

仕様書

どの標準にも含まれていません。

ブラウザーの互換性

関連情報