我在 IE 中遇到页面刷新时发生的内存泄漏(如我在 this SO 帖子中所述)。
此时我想知道的是:有没有办法在文档“卸载”事件(页面刷新或关闭时调用)清除所有内容?我正在寻找一个简单的解决方案,以确保所有东西都被销毁以避免泄漏。这甚至可能吗,还是我必须继续调查泄漏的细节并逐个对象修复它?
更新:好吧,也许我的描述不够。我不能(至少我认为我不能)只是将我的所有对象都设置为空:我有用于点击事件等的事件处理程序,因此应用程序需要一直处于“事件”状态,直到它关闭。此外,如果我随后考虑在“卸载”方法(退出页面时调用)中将所有内容清空,那么我的所有对象都必须具有全局范围(对)?解决此问题的最佳方法是什么?有没有办法获取所有引用对象的列表,以便我可以将它们置空?我是否应该将我使用的每个对象都添加到一个数组中,以便以后可以取消引用它?
最佳答案
尝试window.onbeforeunload
或window.onunload
并将您使用的变量设置为空。
或者您正在寻找更多东西?
关于页面刷新时 Javascript 内存泄漏;补救?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2990484/