Javascript:如何初始化二维数组 [英] Javascript: How to initialize a 2 dimensional array
本文介绍了Javascript:如何初始化二维数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我认为初始化多维数组很容易:
I thought initializing an multi dimensional array would be easy:
row = Array(4).fill(0)
block = Array(4).fill(row)
block[2][2] = 15
但这只会创建一个四行的数组,因此,如果我将block [2] [2] = 15分配给整个列,则整个列为15.
but that just creates an array of one row, 4 times, so if I assign block[2][2] = 15, then the whole column is 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))
,但结果相同.
I tried Array(4).fill(Array(4).fill(0))
but had the same result.
推荐答案
您可以编写一个辅助函数来初始化二维数组.例如:
You could write a helper function to initialize your two dimensional array. For example:
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:如何初始化二维数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文