Javascript:插入一个空的3d数组

问题描述

我创建了一个空的3x3x1 3D数组

[
  [[],[],[]],[[],[]]
]

现在,位置arr[1][1]处的元素为[],因此,如果我执行arr[1][1].push(1),则应在位置1上插入arr[1][1]

有两种方法可以在JS中创建一个空的3x3x1数组,这是代码,

var arr1 = [...new Array(3)].map(e => [...new Array(3)].fill([]));
var arr2 = [[[],[]]];
arr1[1][1].push(1);
arr2[1][1].push(1);
console.log(arr1)
console.log(arr2)

即。通过快捷方式和其他手动操作,arr1arr2应该相同,输出也应该相同,但是输出如下,

[[[],[[1],[1],[1]],[]]]

[[[],[]]]

为什么第一个数组给出这样的输出?两者不一样吗?

我希望输出为第二种形式,如果这是创建空的3x3x1数组的错误方法,请提出一种能够提供预期输出的方法。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)