如何在对象内复制对象并在angular2中更改其任何值?

时间:2017-03-27 16:28:00

标签: angular typescript

目前我使用的是角度2,在我的打字稿文件中,我有一个像这样的对象。

chartData:any

chartData具有结果数组,每个结果都是通道数组

所以chartData.result [0] .channels [4],这是我们最初得到的

我想将结果[0]推入结果[1]并更改频道[0] .id =" New"而我正在尝试

this.chartData.result.push(this.chartData.result [0]);

this.chartData.result [1] .channels [0] .id =" New"

当我这样做时,它改变了结果[0]和结果[1]的通道[0]的id,当我试图仅改变结果[1]对象时,为什么会发生这种情况。

1 个答案:

答案 0 :(得分:0)

因为你绑定推送同一个对象及其对数组元素的引用。可能会有帮助。

 this.chartData.result.push(Object.assign({}, this.chartData.result[0]));