(1)概念:指一块被分配的内存既不能使用,又不能回收,直到浏览器进程结束。浏览器
(2)主要缘由:闭包
1)当页面中元素被移除或替换时,若元素绑定的事件仍没被移除,在IE中不会做出恰 当处理,此时要先手工移除事件,否则会存在内存泄露。spa
2)循环引用:常见而且通常状况下无害,可是,在 IE 中,若是循环引用中的任何对 象是 DOM 节点或者 ActiveX 对象,垃圾收集系统则不会发现它们之间的循环关 系与系统中的其余对象是隔离的并释放它们。最终它们将被保留在内存中,直到浏 览器关闭。(打破循环) 对象
3)自动类型装箱转换:IE下形成内存泄漏(先转换成相应类型)。进程
4)DOM插入顺序从外到内,IE特有问题(应该从内到外添加)。事件
5)反复重写同一个属性会形成内存大量占用(但关闭IE后内存会被释放,避免这样写)内存
6)闭包(打破循环引用,将引用对象置空)。内存泄漏