Javascript jquerycatch";RangeError:超过最大调用堆栈大小;
我有一个页面,在FF和IE中运行良好。然而,chrome抛出Javascript jquerycatch";RangeError:超过最大调用堆栈大小;,javascript,jquery,google-chrome,chromium,Javascript,Jquery,Google Chrome,Chromium,我有一个页面,在FF和IE中运行良好。然而,chrome抛出 jquery.min.js:2 Uncaught RangeError: Maximum call stack size exceeded 这是因为试图处理大量数据(请参阅) 有没有可能捕捉到错误,这样整个页面的javascript就不会挂起?或者我必须减少chrome的数据量。JavaScript不支持尾部递归。您可能正在从一个函数调用一个函数,直到它崩溃。(请发布一些代码来说明你在做什么) 在“迭代”之间使用设置超时。这样
jquery.min.js:2 Uncaught RangeError: Maximum call stack size exceeded
这是因为试图处理大量数据(请参阅)
有没有可能捕捉到错误,这样整个页面的javascript就不会挂起?或者我必须减少chrome的数据量。JavaScript不支持尾部递归。您可能正在从一个函数调用一个函数,直到它崩溃。(请发布一些代码来说明你在做什么)
在“迭代”之间使用设置超时。这样您就不会阻塞UI或破坏堆栈。我怀疑这与试图处理大量数据有关;另一个问题没有答案,我怀疑这也是问题所在。您没有发布任何代码,因此无法说出发生了什么。代码中没有递归。我认为无限递归也会使其他浏览器崩溃。事实是,在这种情况下,即使是ie7也比webkit处理得更好。另外,问题不是帮助我,而是能够捕获
范围错误。我不明白那些反对票…你没有发布任何代码。你说不存在递归,但这显然是问题最可能的原因。好吧,我不是要为我的问题找到一个直接的解决方案,而是要看看是否有可能在全局范围内捕获错误。如果你读最后一段,这就是问题所在。@PetrMarek Sure:或者。但是,除了问题的解决方案,你还希望从中得到什么呢?简单的迭代无论如何都不会耗尽堆栈。@Pointy Correct!我不是指简单的迭代。更新了我的答案以更好地解释它。我在关闭按钮jQuery(this.attr)(“href”,“#”)上单击事件的以下代码中遇到此错误;jQuery(this.trigger)(“单击”);jQuery(this.attr(“href”,“#!”);