如何在javascript中创建nxn矩阵/数组?

Mad*_*hav 5 javascript

我想创建一个具有非固定行数的数组或矩阵

var matrix=[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
            [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
            [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Pra*_*lan 7

使用Array.fromArray#fill方法的ES6解决方案.

function matrix(m, n) {
  return Array.from({
    // generate array of length m
    length: m
    // inside map function generate array of size n
    // and fill it with `0`
  }, () => new Array(n).fill(0));
};

console.log(matrix(3,2));
Run Code Online (Sandbox Code Playgroud)


小智 2

您还可以使用如下代码:

function matrix(m, n) {
    var result = []
    for(var i = 0; i < n; i++) {
        result.push(new Array(m).fill(0))
    }
    return result
}
console.log(matrix(2,5))
Run Code Online (Sandbox Code Playgroud)