InternalError
Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.
TheInternalError object indicates an error that occurred internally in the JavaScript engine.
Example cases are mostly when something is too large, e.g.:
- "too many switch cases",
- "too many parentheses in regular expression",
- "array initializer too large",
- "too much recursion".
InternalError is a subclass ofError.
In this article
Constructor
InternalError()Non-standardCreates a new
InternalErrorobject.
Instance properties
Also inherits instance properties from its parentError.
These properties are defined onInternalError.prototype and shared by allInternalError instances.
InternalError.prototype.constructorThe constructor function that created the instance object. For
InternalErrorinstances, the initial value is theInternalErrorconstructor.InternalError.prototype.nameRepresents the name for the type of error. For
InternalError.prototype.name, the initial value is"InternalError".
Instance methods
Inherits instance methods from its parentError.
Examples
>Too much recursion
This recursive function runs 10 times, as per the exit condition.
function loop(x) { // "x >= 10" is the exit condition if (x >= 10) return; // do stuff loop(x + 1); // the recursive call}loop(0);Setting this condition to an extremely high value, may not work:
function loop(x) { if (x >= 1000000000000) return; // do stuff loop(x + 1);}loop(0);// InternalError: too much recursionFor more information, seeInternalError: too much recursion.
Specifications
Not part of any standard.