Javascript 如何将一个对象的所有引用指向另一个对象?

Javascript 如何将一个对象的所有引用指向另一个对象?,javascript,firefox-addon,Javascript,Firefox Addon,我有一个对象a。Objecta有几个引用指向它,但我不知道它们是什么。我计划销毁对象a,但首先我想将其所有引用指向一个新对象b 一种方法(如果可能的话)是,如果我可以确定对对象a的所有引用,我可以显式地将它们重新分配给b。但是,我还没有找到一种确定对象引用的方法 或者,是否有其他解决方案来实现这一点 编辑: 以下是场景: 在Firefox中,我在DOM中有一个元素(tabbrowser选项卡),该元素将从DOM中删除,另一个元素将放在它的位置上,它将保存必要的数据,以便在恢复选项卡时将选项卡恢复

我有一个对象
a
。Object
a
有几个引用指向它,但我不知道它们是什么。我计划销毁对象
a
,但首先我想将其所有引用指向一个新对象
b

一种方法(如果可能的话)是,如果我可以确定对对象
a
的所有引用,我可以显式地将它们重新分配给
b
。但是,我还没有找到一种确定对象引用的方法

或者,是否有其他解决方案来实现这一点

编辑:

以下是场景:

在Firefox中,我在DOM中有一个元素(tabbrowser选项卡),该元素将从DOM中删除,另一个元素将放在它的位置上,它将保存必要的数据,以便在恢复选项卡时将选项卡恢复到原始选项卡的状态(这是“卸载”选项卡的常用方法)。但是,其他对象有一个对该选项卡的引用,只要从DOM中删除该选项卡,就会破坏这些引用,有时还会破坏其他地方代码的功能。我想将旧选项卡的所有引用指向新选项卡

编辑2:

Firefox有本地方法
addTab
removeTab
。我正在使用这两种方法,
removeTab
来删除一个选项卡,这将从DOM中删除它(除其他外,不需要尝试提供关于Firefox的tabbrowser选项卡模型的深入教程),然后我将使用
addTab
方法在其位置放置一个新选项卡,这将创建一个新的tab元素并将其添加到DOM中。这是一个全新的对象,因此我希望指向旧选项卡的引用现在指向新选项卡


我不知道在这种情况下简单地分配a=b是否有效,因为tabbrowser选项卡非常复杂。

除非您进行某种手动跟踪,否则无法确定对象的引用

例如,
DOM
,在插入元素时设置指向各种对象的各种指针

比如

  • .parentNode
  • .firstChild
  • .nextSiblingNode
还有很多其他的


当你从DOM中删除一个对象时,这些引用都是在幕后手动更新的。

你能提供一些对象
a
的示例吗?阅读有关XY问题的内容。你想让所有指向
a
的引用现在都指向
b
“XY问题”,Amit的意思是,我们认为你是在要求我们解X,这样你就可以解Y。通常情况下,有一种更好的方法来解Y,所以如果你能解释为什么你想做你想做的事情,对所有相关的人都会更好。如果你在关闭所有受影响的变量的范围内,你可以直接说
a=b
和任何使用名称
a
的函数将在下次执行时看到所调用的
b