And*_*rew 13 javascript browser memory-management
我有一个使用大量JavaScript的Web应用程序,旨在不间断地运行(几天/几周/几个月),而无需重新加载页面.
但是,几个小时后Chrome就崩溃了.Safari不会经常崩溃,但确实会大大减慢速度.
如何检查问题是否与我的代码或浏览器本身有关?我该怎么做才能解决这些问题?
Joe*_*Joe 15
使用Chrome开发者配置文件工具,您可以快速了解使用CPU的内容并获取内存快照.
拍2张快照.选择第一个并切换到比较,如下所示

三角形列是数学符号delta或change.因此,如果您的增量是正数,那么您将在内存中创建更多对象.然后,我会在一段时间后拍摄另一张快照,比如5分钟.然后再次比较结果.看着三角洲
如果您的增量是不变的,那么您在内存管理方面做得很好.如果是否定的,那么您的代码是干净的,并且您可以正确地收集使用过的对象,这也是一项很好的工作.
如果你的增量继续增加,你可能会有内存泄漏.
也,
document.getElementsByTagName('*'); // a count of all DOM elements
Run Code Online (Sandbox Code Playgroud)
看看你是否正在稳步增加你的DOM元素会很有用.