var a = {
"example" : true
};
var x = [a], y = [a];
delete x[0];
console.log(y);
在上面的代码中,是否可以删除,而不仅仅是x?
中的引用答案 0 :(得分:10)
这取决于垃圾收集器。只要有一些对象的引用,它就不会被垃圾收集。
如果您想要清理它,请确保没有更多参考。
所以回答你的问题,不,没有办法明确销毁一个对象。如果a
和y[0]
仍然引用它,则无法通过x
变量执行此操作。
要明确指出,x[0]
未引用a
。它指向a
引用的内存中的同一对象。
答案 1 :(得分:1)
我认为你应该提出这个问题。