InternalError
非標準: この機能は標準化されていません。非標準の機能はブラウザーの対応が限られ、将来的に変更または削除される可能性があるため、本番環境での使用は推奨されません。ただし、標準の選択肢が存在しない特定のケースでは、有効な代替手段となる場合があります。
InternalError オブジェクトは、JavaScript エンジンで内部的に発生したエラーを表します。
これは次のように何かが大きすぎる時に発生します。
- "switch case が多すぎる"
- "正規表現内の括弧が多すぎる"
- "配列の初期化子が大きすぎる"
- "再帰が深すぎる"
InternalError は Error のサブクラスです。
コンストラクター
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. を参照してください。
仕様書
どの標準にも含まれていません。