×

错误提示:InternalError: too much recursion

作者:Terry2020.04.16来源:Web前端之家浏览:21979评论:0
关键词:jserro

什么地方出错了?

一个调用自身的函数被称作递归函数。一些情况下,递归函数类似于一个循环,都重复地执行一个代码段许多次,都需要一个条件(用于避免无尽循环或此处的无尽递归)。当出现过于深层的递归或无尽递归时,JavaScript将会抛出此错误。

示例

根据递归终止的条件,该函数将递归地执行 10 次。

function loop(x) {
  if (x >= 10) // "x >= 10" 是递归终止条件
    return;
  // 进行一些操作...
  loop(x + 1); // 递归调用
}
loop(0);

将递归条件设置为一个极大的数值,将不能运行:

function loop(x) {
  if (x >= 1000000000000)
    return;
  // 进行一些操作...
  loop(x + 1);
}
loop(0);

// InternalError: too much recursion

您的支持是我们创作的动力!
温馨提示:本文作者系Terry ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接:
https://jiangweishan.com/article/cuowu80293840283ruoui.html

网友评论文明上网理性发言 已有0人参与

发表评论: