【发布时间】:2013-07-19 03:50:33
【问题描述】:
所以目前我这里有一个数组,我想对最后一项进行一些修改并将其推回。这里我有这个代码:(示例被简化)
var array = [
[ [0,1,2], [3,4,5] ]
];
//other stuff...
var add = array[0].slice(); //to clone the array (but not working as expected)
add[0][0] = 10;
array.push(add);
console.log(array);
结果如下
如您所见,第一项和第二项都将其第一项更改为10。我怎么解决这个问题?我已经克隆了数组。
【问题讨论】:
-
没有参数的切片应该做什么
-
@aaronman - 这是用于克隆数组的技巧。
-
是的,你明白了,问题是里面的对象是引用而不是新对象
标签: javascript arrays reference