首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于查看对象引用的工具

用于查看对象引用的工具
EN

Stack Overflow用户
提问于 2015-07-15 11:42:49
回答 1查看 66关注 0票数 1

有没有用于Node.js或浏览器的工具,可以让我找出哪些对象包含对对象X的引用?

现在我正在使用Backbone进行前端开发,即使我删除了视图,之后似乎仍然会引用它们。

我怀疑这种行为的原因首先是因为我在Chrome和Mozilla中使用插件/插件进行主干调试。

这确实让我怀疑,这些程序本身是否包含对Backbone对象的引用!

EN

Stack Overflow用户

发布于 2015-07-15 12:03:15

首先,遗憾的是,没有办法做到这一点。您可以检查是谁调用了特定变量作为引用的函数和对象。这不是因为Backbone/Node.js,而是Javascript本身。当您替换object/Array时,javascript仅将目标内存地址传递给变量。

但是我假设你有内存泄漏问题的原因很可能不是来自另一个变量的引用,而是事件处理程序,这在Backbone使用中很常见(也称为“僵尸视图”)

在视图中设置事件处理程序后,需要确保在实际删除视图(.remove())之前取消设置所有事件,除非您仅将listenTo用于主干事件,将this.$el用于jQuery事件。因为当您删除视图时,Backbone Core会自动删除通过listenTothis.$el设置的事件。而由Model.on或global jQuery$设置的事件则不会如此。

因此,请检查您的整个代码是否使用.on或全局jQuery对象来设置事件,如果有,请将它们替换为listenTothis.$el.on,或者在删除它们之前手动取消设置。

票数 3
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31421116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档