JavaScript按值复制数组

JavaScript中的数组复制到另一个数组时:

var arr1 = ['a','b','c'];

var arr2 = arr1;

arr2.push('d'); //Now, arr1 = ['a','b','c','d']

我意识到这arr2是指与相同的数组arr1,而不是新的独立数组。如何复制数组以获取两个独立的数组?

回答:

用这个:

var newArray = oldArray.slice();

基本上,该slice()操作会克隆数组并返回对新数组的引用。

另请注意:

对于引用,字符串和数字(​​而不是实际对象),将 原始数组和新数组都引用同一对象。如果引用的对象发生更改,则更改对新数组和原始数组均可见。

字符串和数字之类的基元是不可变的,因此无法更改字符串或数字。

以上是 JavaScript按值复制数组 的全部内容, 来源链接: utcz.com/qa/403704.html

回到顶部