是否应该移除不再使用的事件监听?

对于不再使用的事件监听是否应该将其移除。若不移除会有哪些影响?

阅读 5.3k
5 个回答

不同的事件监听最好移除掉,特别是涉及到闭包调用的事件监听函数,不移除会影响JS执行引擎的垃圾回收。
还有那些你只执行一次的事件监听,例如你监听鼠标滚动lazy加载页面内容的事件监听,当需要的内容加载完后就要把它清理掉,避免无谓的脚本执行

如果怕引起其他冲突,可以在确定不使用监听时移除掉,不过我感觉没有特殊需求的情况下不需要移除,

并不会太影响性能,还是别浪费时间了吧。
有这时间,完全可以做点别的事来优化性能。

监听不占用内存吗?感觉不用了还是移除吧

if(不再使用 === 不能触发){
    //当然要移除,不移除那就是 bug
    showExample('拖拽结束后移除 mousemove 事件');
}
else{
    //看心情
}

其实我根本没考虑出有什么不再使用!==不能触发的情况,烦请指点

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题