我想了解如何在JavaScript中使用閉包時防止內存泄漏。如果我所做的是正確的,有人可以告訴我嗎?Javascript關閉 - 如何防止內存泄漏
我有一個虛擬函數:
var testFunction = function(obj1){
//other code..
on(control, "click", function(){
obj1.label= "test";
});
};
1)請問以上導致內存泄漏,因爲OBJ1在click事件被引用?
2)我可以做修復它下面:
var testFunction = function(obj1){
//other code.....
on(control, "click", function(){
var newObj1 = obj1;
newObj1.label= "test";
newObj1 = null;
});
};
如果這是一個壞榜樣,可有人告訴我有內存泄漏和如何解決它的封閉的更好的例子嗎?
在此先感謝!
這兩個函數都不起作用。 (嗯,功能將工作,但事件處理程序將失敗。) – Pointy
謝謝,我拿出了我設置obj1 = null的行。 – EriqaBana