It's not entirely clear to me how garbage collector works for js.
Do all modern browsers work according to Mark-and-sweep algorithm (Chrome, Firefox ...)?
Internet Explorer 6 and 7 are known to have reference-counting garbage collector for DOM objects. Cycles are a common mistake that can generate memory leaks.
It seems to me that only IE works according to reference-counting garbage collector. Is it true?