Javascript简单对象的内存泄漏

时间:2015-03-27 09:37:26

标签: javascript memory-leaks

我正在寻找JavaScript中内存泄漏的一些非常基本的例子以及如何解决它们。具体来说,如果我在我的代码中做了类似的事情;

var obj = new MyObj();

我是否必须明确处理某些事情或做一些步骤以使obj不泄漏?或者我不必担心什么?是否会被浏览器自动收集垃圾?

在内存处理方式(w.r.t. DOM或任何其他对象)方面是否存在跨浏览器差异?

2 个答案:

答案 0 :(得分:0)

我猜您可以在此页Javascript Memory Management

中找到答案

答案 1 :(得分:0)

简短摘要:当对象没有更多引用时,对象将被浏览器自动收集。

这样做

var obj = {}; obj = null;

将导致obj在将来的同一个随机点被垃圾收集,你无法明确地告诉浏览器垃圾收集这个对象。当然,这是你通常不会做的事情,因为对象引用通常超出范围。

示例:

function foo() {
 var obj = {};
}
foo();

在此函数调用之后,obj变量不再存在并且超出范围,obj引用的对象现在是垃圾收集的候选者。 / p>