var x = [1,2,3];
var y = x;
y.fill(5);
console.log(x); //[5,5,5]
console.log(y); //[5,5,5]
如何防止 fill()方法更改 var x 数组?为什么 y.fill()同时更改 var y 和 var x ?
答案 0 :(得分:3)
y
指向与x
相同的数组。如果您想阻止这种情况,则需要复制/克隆x
,并将其分配给y
。
var y = x.slice();
答案 1 :(得分:0)
你的var y是对x数组的引用。试试var y = [1,2,3];
。 var y = x.slice();
会为您提供浅色副本。向上看VS.浅拷贝,以确定这是否是一个合适的解决方案。