jQuery catch“RangeError:超出最大调用堆栈大小”

时间:2012-08-20 15:37:19

标签: javascript jquery google-chrome chromium

我有一个页面,在FF和IE中工作正常。但是,chrome抛出

jquery.min.js:2    Uncaught RangeError: Maximum call stack size exceeded

这是因为尝试处理大量数据(参见Chrome RangeError: Maximum call stack size exceeded when using jQuery $.map)。

是否可能catch错误,以便整个页面的javascript不会挂起?或者我是否必须减少chrome的数据量。

1 个答案:

答案 0 :(得分:4)

JavaScript不支持Tail Recursion。你可能正在从函数函数中调用函数,直到它被打破。 (请发布一些代码以显示您正在做的事情。)

在'iterations'之间使用 setTimeout 。这样您就不会阻止UI或炸毁堆栈。