此问题已在此处有答案:
How can I create a two dimensional array in JavaScript?(55个回答)
7天前关闭
如何在JavaScript或TypeScript中创建一个m×n的2d数组?当然,我可以创建一个2×3数组:
arr = [[0, 0], [0, 0]]
但是维数是用变量m
和n
给出的。所以我可以这样做:
arr = new Array(m).fill(new Array(n).fill(0))
但是所有的行都是相同的数组:
arr[1][2] = 5
console.table(arr)
| (索引)|0| 1| 2|
| - -----|- -----|- -----|- -----|
| 0| 0| 0| 5个|
| 0| 0| 0| 5个|
我只修改了最下面的一行,但最上面的一行也受到了影响。所以下面的内容是我想要的(每个单元格是不同的内存位置):
arr = [...new Array(2)].map(() => new Array(3).fill(0))
这是工作,但它是非常丑陋的。JavaScript或TypeScript是否有更合适或更有效的方法来创建2d数组?
1条答案
按热度按时间p3rjfoxz1#
尝试使用
Array.from