Javascript 如何创建固定行数和非固定列数的矩阵/数组?

Javascript 如何创建固定行数和非固定列数的矩阵/数组?,javascript,jquery,arrays,Javascript,Jquery,Arrays,在这里,我试图创建具有固定行数和非固定列数的mtrix,如bellow。 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 ]] 我正在尝试此代码 function matrix1(m, n) { for ( m = 9;m>0;m--) { for (var n=m;n>

在这里,我试图创建具有固定行数和非固定列数的mtrix,如bellow。

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 ]] 
我正在尝试此代码

function matrix1(m, n) {
    for (  m = 9;m>0;m--)
    {
        for (var n=m;n>0; n--)
        {   
             return Array.from({  
                 length: m
              }, () => new Array(n).fill(0));
        }
        document.write("<br>");      
    }      
};

var cols=9
var counter=9;
matrix(counter,cols);
我得到的输出是

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, 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, 0, 0, 0], 
             [0, 0, 0, 0, 0, 0, 0, 0, 0],
             [0, 0, 0, 0, 0, 0, 0, 0, 0]]

我的代码有什么问题?

您可以使用
array.map
array.fill

函数createMatrix(m,n){
返回新数组(m).fill(“”).map(函数(el,索引){
返回n>索引?新数组(n-索引)。填充(0):[];
});
}

log(createMatrix(7,7))
只是对代码进行了一些小修改

function matrix(m, n) {
 var arr = [];
 for (  m = 9; m>0; m--)
    {
      for (var n = m;n>0; n--)
         {
           arr.push(new Array(n).fill(0))
         }
       return arr;
    }  
 };

var cols=9
var counter=9;
console.log(matrix(counter,cols));
这会奏效的

工作实例:


希望这有帮助。谢谢

这不包括我所尝试的,但这段代码创建了最小列大小的数组,其中包含3个,如果我想要它,直到1谢谢@Rajesh它真的很有用,@KrishCdbryMost Welcome@M56035G:)
function matrix(m, n) {
 var arr = [];
 for (  m = 9; m>0; m--)
    {
      for (var n = m;n>0; n--)
         {
           arr.push(new Array(n).fill(0))
         }
       return arr;
    }  
 };

var cols=9
var counter=9;
console.log(matrix(counter,cols));