gpt4 book ai didi

javascript - chrome 中超出了最大调用堆栈大小,IE 中堆栈空间不足 (JavaScript)

转载 作者:行者123 更新时间:2023-12-03 12:02:41 24 4
gpt4 key购买 nike

我有一个像这样的递归方法:

PrintRecursive = function (arr, level) {
for (var key in arr) {
var term = arr[key];
htmlArr.push("<li><input type=\"radio\" name=\"tempName\" id=\"" + term.Id + "\" data-taxonomy-url=\"" + term.Url + "\" /><label for=\"" + term.Id + "\">" + term.Title + "</label>");
if (term.ChildTerms !== undefined && term.ChildTerms != null) {
htmlArr.push("<ul>");
PrintRecursive(term.ChildTerms, ++level);
level--;
htmlArr.push("</ul>");
htmlArr.push("</li>");
}
else {
htmlArr.push("</li>");
}
}
}

当它尝试执行 htmlArr.push 时,它会在 IE 中生成堆栈空间不足,在 Chrome 中生成超过最大调用堆栈大小。 arr 是一个数组数组,但 arr 中的总项目数为 385 项。我是否因为使用了被调用太多次的递归方法而收到此错误?或者因为 htmlArr 包含太多数据(html)?

最佳答案

这意味着您的递归函数达到了浏览器的特定调用堆栈限制。

要修复它并了解更多信息,请查看以下帖子: Maximum call stack size exceeded error

关于javascript - chrome 中超出了最大调用堆栈大小,IE 中堆栈空间不足 (JavaScript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25342823/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com