【发布时间】:2016-12-13 13:09:43
【问题描述】:
我遇到了一些我对数组不理解的问题。事实上,我创建了一个数组,我用空子数组填充了一个 2D 矩阵。 但是当我操作数组时,它的行为并不像我预期的那样。
var arr = new Array(5);
arr.fill([]);
arr[2].push("third rank item");
console.log(arr);
//[ [ 'third rank item' ],
// [ 'third rank item' ],
// [ 'third rank item' ],
// [ 'third rank item' ],
// [ 'third rank item' ] ]
这件事上的每一个亮点都会受到欢迎
【问题讨论】:
-
你期望它的表现如何?
-
您正在填充 same 空数组。你可以试试
Array.from(new Array(5), () => [])。 -
@torazaburo 你能简单解释一下吗? OP 针对外部数组中的第 3 项并推送了一个字符串,该字符串导致将字符串推送到所有内部数组中。有点混乱。
-
所有内部数组都是同一个数组。
-
所有内部数组都是同一个数组。
标签: javascript arrays