Which versions of Internet Explorer have memory leaks?

I read on Douglas Crockford's page as well as around the Internet that there are some versions of Internet Explorer that exhibit memory leaks due to an interaction between DOM and JavaScript. What versions are those?


Solution 1:

According to this blog post by an MS employee:

As described in detail in this MSDN article the JScript garbage collector in previous versions of Internet Explorer manages the lifetime of JScript objects but not of DOM objects. As a result, the JScript garbage collector cannot break circular references between DOM objects and JScript objects, and memory leaks may occur.

  • In IE6, these circular references are broken when the Internet Explorer process terminates (and leaks are very frequent).
  • In IE7, these circular references are broken when users navigate away from the page.
  • In IE8 the problem is completely mitigated.

Programmers who need to support older versions of the Internet Explorer browser should still try to pay attention to programming patterns such as JScript closures, as they could cause memory leaks.