如果我有以下代碼:是否有必要使垃圾收集的原始值無效?
function MyClass() {
this.data = {
// lots of data
};
}
var myClassInstace = new MyClass();
var myobj = {
num:123,
str:"hello",
theClass:myClassInstance
};
我知道這是絕對必要的事情:
myobj.theClass = null;
要釋放myClassInstance
及其data
財產GC。但是,我應該怎麼處理myobj.num
和myobj.str
?我是否也必須給他們價值null
?他們原始的事實是否改變了有關GC的任何事情?
你想保留'myobj'但要確保其所有值不佔用內存或者你想完全從記憶抹'myobjt'? – vlaz
「我知道這是絕對必要的事:'myobj.theClass = NULL;'...」 **不,這不是** –
是的,我要刮淨'myobj'。如果我想要**那**,我非常肯定,如果我不想導致內存泄漏,那麼必須執行'myobj.theClass = null'。 –