【发布时间】:2020-02-02 17:19:29
【问题描述】:
我有这两个数组:
let num1 = [[1]];
const num2 = [2, [3]];
我连接这两个并创建新数组:
const numbers = num1.concat(num2);
console.log(numbers);
// results in [[1], 2, [3]]
现在我向 num1 推送一个新值:
num1[0].push(4);
console.log(numbers);
// results in [[1, 4], 2, [3]]
但如果我写:
num1[0] = [1, 4, 5];
console.log(numbers);
// results in [[1], 2, [3]]
为什么将 vale 重新分配给 num1 并不能反映 numbers 数组的变化,但 push 方法可以?
【问题讨论】:
-
几乎可以肯定有 92345623 个这样的骗子,但仍在等待一个合适的。虽然以上是相关的,但它并没有真正解决问题。
标签: javascript arrays push concat