【发布时间】:2015-05-29 06:51:20
【问题描述】:
如果我有一个创建对象的函数,做一些事情然后返回它。如果对象确实是通过引用传递的,这是否意味着创建对象的函数(或函数的作用域链)将不可用于垃圾回收?
示例代码:
function convertArrayToObj(array){
var newObj = {};
array.forEach(function(item, index){
newObj[index] = item;
});
return newObj;
}
我希望我把我的疑问说清楚了
【问题讨论】:
-
不,该范围将可用于垃圾,函数执行结束后没有对其保留的引用。该对象独立于其创建范围。你可能会对闭包感到困惑。
标签: javascript object scope garbage-collection return-by-reference