Javascript将数组推入另一个数组

以下代码(带/不带扩展运算符)之间有什么区别吗?

let result = [];
let arr1 = [1,2,3];

result.push(arr1)
result.push([...arr1])

回答

在第一种情况下,没有扩展,对第 0 个位置的数组的任何修改result也将导致对原始数组的更改arr1,反之亦然。

但是,如果您在推送时扩展数组,则不会发生此类更改;两个数组(一个 in arr1,一个 in result[0])将完全独立。

let result = [];
let arr1 = [1,2,3];

result.push(arr1)

arr1[1] = 999;
console.log(result);

let result = [];
let arr1 = [1,2,3];

result.push([...arr1])

arr1[1] = 999;
console.log(result);


以上是Javascript将数组推入另一个数组的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>