Javascript 这会导致浏览器内存泄漏吗?

Javascript 这会导致浏览器内存泄漏吗?,javascript,html,Javascript,Html,我创建了一对div,并在其上作为“parentDiv”的子对象单击onclick事件。将来,我将设置parentDiv.innerHTML='xyz',其中xyz是带有onclick事件的更多div,这些事件将替换旧的div 我的问题:是否有浏览器会泄漏内存,因为在从dom中删除旧div的onclick事件之前,我并没有删除它们?我建议阅读Douglas Crockford的解释。本文给出了详细的内存泄漏示例,甚至还提供了一个很好的清除功能,使您能够克服与内存泄漏相关的问题。享受吧 如果从DOM

我创建了一对div,并在其上作为“parentDiv”的子对象单击
onclick
事件。将来,我将设置
parentDiv.innerHTML='xyz'
,其中xyz是带有
onclick
事件的更多div,这些事件将替换旧的div


我的问题:是否有浏览器会泄漏内存,因为在从dom中删除旧div的
onclick
事件之前,我并没有删除它们?

我建议阅读Douglas Crockford的解释。本文给出了详细的内存泄漏示例,甚至还提供了一个很好的清除功能,使您能够克服与内存泄漏相关的问题。享受吧

如果从DOM中删除它们,那么也应该从它们中删除任何事件处理程序,而不是导致泄漏


道格拉斯·克罗克福德写了一些优秀的文章。值得一读。

不,这取决于浏览器的管理。删除对象后,浏览器将(或至少应该)释放相关内存。但我不会指望它

在任何情况下,除非你这样做了数千次,否则我不会认为这是一个问题。

通常不会

但是,如果onclick处理程序恰好是引用它所附加到的HTML元素的闭包,那么它可能会在某些浏览器中泄漏


看看我写的这本指南,了解有关JavaScript内存泄漏以及如何查找和修复它们的更多详细信息:。这应该会帮你解决问题。

废话。嗯,听起来这是一个很好的研究项目-如果你不介意发布这个页面,我很乐意为你介绍一下。