2017-07-18 101 views
0

我正在寻找一个解决方案,从另一个复制数组,所以我可以操纵我的第二个数组。但问题是,当我在第二个变化时,它也影响第一个。复制数组的值,而不是通过与JavaScript参考

例子:

var array1 = [1 , 2 , 3]; 
var array2 = array1; 

array2.splice(0,2); 

结果:

array2 : [3]; 
array1 : [3]; 

但我希望:

array1 : [1 , 2 , 3]; 
array2 : [3]; 

这个任何解决方案?

回答

-1

尝试下面的代码

var array1 = [1 , 2 , 3]; 
var array2 = array1.slice(); 

array2.splice(0,2); 
+1

这是典型地更理想的是使用'.slice()'代替'.splice()'当“复制”,以避免修改的过程中原始数组。 –