Learning jQuery says that IE has a memory leak for a DOM object that has a property that refers to a function, and the function also refers to a DOM object, thus having a "circular reference", for example:
onload = function() { var foo = document.getElementById('foo'); foo.onclick = function() {
IE can handle circular references for garbage collection, but not when circular references include both the DOM object and the Javascript object, because they are handled by different memory managers.
and
[memory leak ... and] as a result of the [link] loop cannot be freed by IE, even when we navigate from the page.
never freed until the browser is closed.
It's true? Why doesn't IE release this memory even when the user leaves the page? Is it because the user can click Back and return to the page, and IE would like to keep the page state? In this case, what if the user is on a memory leak page and then clicks Back and then goes to google.com? Then the page cannot be viewed by any Back or Forward , and the memory leak problem can disappear without closing the browser?
Or even when the tab is closed without closing the browser?
Is there such a memory leak in IE 8?
garbage-collection internet-explorer memory-leaks
ε€ͺζ₯΅ θ
η‘ζ₯΅ θ η
source share