我认为初始化多维数组很容易:
row = Array(4).fill(0)
block = Array(4).fill(row)
block[2][2] = 15
但这只是创建一个单行数组,共 4 次,所以如果我分配 block[2][2] = 15,那么整列就是 15。
(4) [Array(4), Array(4), Array(4), Array(4)]
0:(4) [0, 0, 15, 0]
1:(4) [0, 0, 15, 0]
2:(4) [0, 0, 15, 0]
3:(4) [0, 0, 15, 0]
我尝试了 Array(4).fill(Array(4).fill(0))
但结果相同。
最佳答案
您可以编写一个辅助函数来初始化您的二维数组。例如:
const grid = (r, c) => Array(r).fill(null).map(r => Array(c).fill(null));
const g = grid(4, 4);
g[2][2] = 15;
console.log(g);
关于Javascript:如何初始化二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49354354/