单页应用程序 - 内存泄漏说明

时间:2015-05-17 18:35:48

标签: javascript jquery memory-leaks

所以,我正在研究SPA,我知道有很多FrameWorks可以帮助构建一个。但是我们假设我只使用jQuery。

好的,所以在一个页面中,我创建了一个显示用户联系人的表,来自Ajax调用:

log4j.rootCategory=INFO, CONSOLE, LOGFILE

此代码是真实的,并且实际上正在运行。令我担心的是iCheck(用于对复选框进行样式化),在桌面上添加行后,我启动iCheck以使其正常工作。所以,当用户离开这个页面时(没有重新加载任何东西,这是一个单页应用程序,还记得吗?),这个iCheck只会变成'鬼'...我知道对于事件,我可以调用off()方法来删除所有先前绑定的事件(这可以避免内存泄漏?),但是对于我在这里谈到的这种启动,这也会是内存泄漏?

1 个答案:

答案 0 :(得分:1)

在这种特殊情况下,iCheck有一个' destroy'删除iCheck'的所有痕迹的方法。 (见the iCheck docs)。如果在此用户导航离开相关视图(在修改DOM之前)时调用此方法,则应该没有内存泄漏。

否则几乎肯定会挂掉'事件处理程序在页面转换后留在内存中,尽管如评论中所述,它们的总内存使用量可能可以忽略不计。