JavaScript创建初始值为零的二维数组
程序员文章站
2022-07-16 18:02:01
...
对于初学者而言,简洁而易于理解的方法:
function twoDarrMaker(row, col) {
const twoDarr = [];
for (let i = 0; i < row; i++) {
let subarray = [];
for (let j = 0; j < col; j++) {
subarray.push(0);
}
twoDarr.push(subarray);
}
return twoDarr;
}
twoDarrMaker(3, 2);
// [
// [ 0, 0 ],
// [ 0, 0 ],
// [ 0, 0 ]
// ]
要创建具有给定大小(适用于更多尺寸)的空2D数组,请执行以下操作:
let array = Array(rows).fill().map(() => Array(columns));
预装二维阵列:
let array = Array(rows).fill().map(() => Array(columns).fill(0));
例如:
Array(2).fill().map(() => Array(3).fill(42));
// Result:
// [[42, 42, 42],
// [42, 42, 42]]
警告:
Array(rows).fill(Array(columns))
将导致所有行都是对同一数组的引用!!
另一种可能的方法是使用Array.fill()
地图功能。
例如:
Array.from(Array(2), _ => Array(3).fill(43));
// Result:
// [[43, 43, 43],
// [43, 43, 43]]