Wird ein DOM-Objekt (in Javascript) entfernt, führt dies zu einem Speicherverlust, wenn ein Ereignis angehängt ist?
Wenn ich in Javascript ein DOM-Objekt in der HTML-Seite erstelle und einen Ereignis-Listener an das DOM-Objekt anhänge, ist der Ereignis-Listener nach dem Entfernen des DOM aus der HTML-Seite immer noch vorhanden und führt zu einem Speicherverlust?
function myTest() {
var obj = document.createElement('div');
obj.addEventListener('click', function() {alert('whatever'); });
var body = document.getElementById('body'); // assume there is a <div id='body'></div> already
body.appendChild(obj);
}
// then after some user actions. I call this:
function emptyPage() {
var body = document.getElementById('body');
body.innerHTML = ''; //empty it.
}
So, das DOM-Objekt,<div>
Innerhalbbody
ist weg. Aber was ist mit demeventlistener
? Ich habe nur Angst, dass es zu einem Speicherverlust kommt.