递归 – 增加浏览器中的堆栈大小

简短的问题:我有一个非常深入的
javascript递归.如何增加堆栈大小以便我可以执行它(类似于Unix系统中的“ulimit -s unlimited”)?

长话:我必须绘制一个图形,我使用Cytoscape JS(http://js.cytoscape.org/)和Dagre布局扩展(https://github.com/cytoscape/cytoscape.js-dagre).绘图算法深入到递归中,我最终得到Chrome中的“Uncaught RangeError:超出最大调用堆栈大小”和Firefox中的“过多递归”.如何将堆栈大小设置为无限制或非常大(即Unix系统中的“ulimit -s unlimited”),以便我可以绘制图形?

谢谢!

最佳答案 您可以使用名为
trampolining的技巧.

有一个解决方案可以在How to understand trampoline in JavaScript?找到

点赞