JAVASCRIPT:分配给同一对象的另一个方法的方法 - 改变第一个值的第二个改变

时间:2016-03-23 21:03:29

标签: javascript object methods variable-assignment slice

所以我有一个名为game的javascript对象,有两种方法:

function game() {
    this.TxtRevealed = new Array();
    this.TxtRevealedBackup = new Array();
[...]
}

现在,在一个对象之外我分配另一个:

game.TxtRevealedBackup = game.TxtRevealed;

过了一会儿我改变game.TxtRevealed(我使用slice函数从中删除一些值)。 现在发生了我不想要的事情:自动game.TxtRevealedBackup也会更改为game.TxtRevealed的新值。

我希望game.TxtRevealedBackup与分配时的game.TxtRevealed相同。它就好像game.TxtRevealedBackup指向由game.TxtRevealed连续表示的值,而不是指向赋值时的值。

为什么会发生这种情况以及如何使其发挥作用?

Kalreg。

1 个答案:

答案 0 :(得分:0)

对象通过引用工作。如果要克隆对象,请参阅此answer