关于JavaScript未知长度的二位数组的定义

本人小白一枚 初入js行 现在不知道该如何定义未知长度的二维数组,求大神告知,另外
求行列转换的代码 谢谢

动态增加元素就行了,不需要预先定义,

     var arr = [];
    arr[0] = []///
    arr[0].push(1)
    arr[0].push(2)
    arr[0].push(3)
    arr[1] = []///
    arr[1].push(4)
    console.log(arr)// [[1, 2, 3], [4]]

行列转换不懂你什么意思?如果是遍历用下面的


    var arr = [];
    arr[0] = []///
    arr[0].push(1)
    arr[0].push(2)
    arr[0].push(3)
    arr[1] = []///
    arr[1].push(4)

    arr[3] = [5];
    arr[3].push(6)

    for(var i=0;i<arr.length;i++)
        if (arr[i]) {//防止下标不连续得到undefined报错,如上面缺少arr[2],会得到undefined
            for(var j=0;j<arr[i].length;j++)
                alert('Cell('+i+','+j+'):'+arr[i][j])
        }