当javascript中挂起无限循环或浏览器时,有没有方法调用函数?
嗨,我在做一个有大量javascript代码的项目,有时候javascript代码会自动执行并挂起浏览器,并显示消息“kill this page”在chrome中,有任何方法可以跟踪错误。比如在无限循环到达时调用函数,或者浏览器挂起。请给我一些关于调试javascript代码plz的建议。无限循环可能是由许多不同的错误编程逻辑引起的,并且在任何情况下都没有可靠的逻辑可检测。所以我非常怀疑任何编程语言或IDE是否能提供可靠的无限循环检测 您看到的基本上是一个运行时检测,它基于在浏览器更新和刷新UI之前脚本执行所花的时间 有时,这种长时间运行的JavaScript可能是由无限循环引起的,但很多时候它们只是大循环或执行太多工作的循环,导致UI无响应当javascript中挂起无限循环或浏览器时,有没有方法调用函数?,javascript,debugging,Javascript,Debugging,嗨,我在做一个有大量javascript代码的项目,有时候javascript代码会自动执行并挂起浏览器,并显示消息“kill this page”在chrome中,有任何方法可以跟踪错误。比如在无限循环到达时调用函数,或者浏览器挂起。请给我一些关于调试javascript代码plz的建议。无限循环可能是由许多不同的错误编程逻辑引起的,并且在任何情况下都没有可靠的逻辑可检测。所以我非常怀疑任何编程语言或IDE是否能提供可靠的无限循环检测 您看到的基本上是一个运行时检测,它基于在浏览器更新和刷新U
您还可以使用日志记录,例如使用足够的值记录循环,以帮助您确定这些循环是否确实是无限循环。在javascript中没有实现您所希望的方法
但是,您可以使用类似于在浏览器中跟踪cpu使用情况的工具来确定正在发生的事情。据我所知,这不是。也许有一种方法可以使用浏览器扩展。当javascript挂起浏览器时,它会占用大量内存,以至于浏览器检测到并杀死它。您将无法再运行任何javascript来检查它…您可能会对可疑的javascript方法使用timeout.thanx。。但是jeschafe r u说杀戮页面之所以显示是因为浏览器消耗了这么多内存。。。如果是的话,那么有什么方法可以检查内存的使用情况并清除内存中的定期间隔。它不需要太多内存,但现代浏览器正在使用机制来检测javascript问题,比如无限循环。据我所知,它们基于函数执行所需的时间。如果需要很长时间,浏览器会要求跳过脚本。请参阅下面的答案,了解如何避免这种情况。