在javascript中从内存中删除对象
我正在使用大量Javascript开发一个AJAX应用程序。所有页面都通过AJAX加载。在javascript中从内存中删除对象,javascript,memory-management,garbage-collection,Javascript,Memory Management,Garbage Collection,我正在使用大量Javascript开发一个AJAX应用程序。所有页面都通过AJAX加载。 在某个页面上,我有一个用Javascript构建的网格。现在,当我离开那个页面时,我想破坏那个网格。我调用jQuery.remove(),但这只会从DOM中删除对象。 我的问题是如何从内存中删除这个网格对象?因为当我离开页面时,它仍然存在 非常感谢 如果删除对网格的所有引用(即为变量赋值null),垃圾收集器将从内存中删除该对象。将网格放入div或任何您想要的内容中。 如果要删除它,请使用 $("<t
在某个页面上,我有一个用Javascript构建的网格。现在,当我离开那个页面时,我想破坏那个网格。我调用jQuery.remove(),但这只会从DOM中删除对象。
我的问题是如何从内存中删除这个网格对象?因为当我离开页面时,它仍然存在
非常感谢 如果删除对网格的所有引用(即为变量赋值null),垃圾收集器将从内存中删除该对象。将网格放入div或任何您想要的内容中。 如果要删除它,请使用
$("<the name of the div>").empty();
$(“”)。空();
这将清除它。当您离开页面导航后,如何知道该对象仍然存在于内存中?是否将网格标识符存储在变量中?如果是,则使gridVar=null;这完全取决于浏览器。。。我猜你认为它仍然存在于内存中,因为浏览器进程内存使用没有减少?当我打开firebug控制台时,我可以看到该对象仍然存在。它只是从DOM中删除的。firebug不能真正分辨内存中有什么和内存中没有什么,我会寻找更“可靠”的如果你真的喜欢它,工具。如果有一个实际的卸载事件触发,这将起作用,但因为这是一个全ajax应用程序,所以这不会发生。一个选项可以是每次在ajax应用程序中导航时调用卸载事件。但这不是一个好的解决方案。。