Я пытаюсь понять, как я могу предотвратить утечку памяти при использовании закрытий в JavaScript. Может ли кто-нибудь сообщить мне, правильно ли я делаю?Закрытие Javascript - как предотвратить утечку памяти
У меня есть фиктивная функция:
var testFunction = function(obj1){
//other code..
on(control, "click", function(){
obj1.label= "test";
});
};
1) делает выше причину утечки памяти, потому что obj1 которую ссылаются в случае щелчка.?
2) можно исправить, выполнив следующие действия:
var testFunction = function(obj1){
//other code.....
on(control, "click", function(){
var newObj1 = obj1;
newObj1.label= "test";
newObj1 = null;
});
};
Если это плохой пример, может кто-то показать мне лучший пример закрытия с утечкой памяти и как это исправить?
Заранее благодарен!
Обе функции не будут работать. (Ну, функции будут работать, но обработчики событий не сработают.) – Pointy
Спасибо, я достал строку, где я установил obj1 = null. – EriqaBana