InternalError

非标准:此功能是非标准的,并且不在标准跟踪中。请勿在面向 Web 的生产站点上使用它:它不会对每个用户都有效。实现之间也可能存在很大的不兼容性,并且行为将来可能会发生变化。

InternalError 对象指示 JavaScript 引擎内部发生的错误。

例如,当某些内容太大时,例如:

  • "switch 语句过多",
  • "正则表达式中括号过多",
  • "数组初始化程序过大",
  • "递归过多".

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: 递归过多。

规范

不属于任何标准。

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅