【发布时间】:2016-11-03 13:49:42
【问题描述】:
假设我有以下功能:
function myfunc() {
var data = [];
for (var i=0; i<10; i++) {
data[i] = {foo:"bar"};
}
// do something with data
}
在函数结束时,我不再需要任何数据。要释放它需要什么?
据我所知,如果无法从全局对象中访问某些内容,则会对其进行 GC。如果data 无法访问,那么内部的所有元素也将无法访问,因为data 是对它们的唯一引用。那么,让data 和其中的所有内容成为 GCable 的正确方法是什么?
如果我把 data = null 放在函数的末尾,它会起作用吗?
我什至需要做点什么吗?既然data是myfunc()中的一个局部变量,是不是应该在函数完成后销毁,从而使data中的数据GCable?
【问题讨论】:
标签: javascript garbage-collection garbage