用JS来声明二维数组m * n,并设置初始value。
总结了下面的三种方法。
// 声明二维数组
function generateArray1(m, n, value) {
let arr2d = Array(m);
for (let i = 0; i < m; i++) {
arr2d[i] = Array(n).fill(value);
}
return arr2d;
}
function generateArray2(m, n, value) {
let res = Array(m)
.fill()
.map(() => Array(n).fill(value));
return res;
}
function generateArray3(m, n, value) {
let res = Array.from(Array(m), () => Array(n).fill(value));
return res;
}
console.log(generateArray1(5, 4, 1));
console.log(generateArray2(4, 3, 2));
console.log(generateArray2(3, 2, 3));
//输出结果
output1:
[
[ 1, 1, 1, 1 ],
[ 1, 1, 1, 1 ],
[ 1, 1, 1, 1 ],
[ 1, 1, 1, 1 ],
[ 1, 1, 1, 1 ]
]
output2:
[ [ 2, 2, 2 ], [ 2, 2, 2 ], [ 2, 2, 2 ], [ 2, 2, 2 ] ]
output3:
[ [ 3, 3 ], [ 3, 3 ], [ 3, 3 ] ]