【发布时间】:2018-10-29 12:27:12
【问题描述】:
我正在尝试创建一个对象关系,其中 object2 的 nextString 属性将反映对 object1 的 originalString 的任何更改。
var object1 = {
nestedObject: {
originalString: "old"
}
}
var object2 = {
nextString: object1.nestedObject.originalString
}
object1.nestedObject.originalString = "new";
originalString 现在是“新的”,但 nextString 仍然是“旧的”
我已经读到这是由于字符串的副本,因为 JS 不像 C 那样使用传递引用作为语言。
有了上面object1和object2之间的示例关系,有没有办法完成我想要的?
【问题讨论】:
-
以这种方式编写副作用是一个非常糟糕的主意。您是否考虑过简单地创建一个对象来巩固和承载您的活动状态?
标签: javascript object reference pass-by-reference