How to convert simple array into two-dimensional array (matrix) with Javascript

后端 未结 15 1845
独厮守ぢ
独厮守ぢ 2020-11-27 04:26

Imagine I have an array:

A = Array(1, 2, 3, 4, 5, 6, 7, 8, 9);

And I want it to convert into 2-dimensional array (matrix of N x M), for ins

15条回答
  •  情书的邮戳
    2020-11-27 05:00

    How about something like:

    var matrixify = function(arr, rows, cols) {
        var matrix = [];
        if (rows * cols === arr.length) {
            for(var i = 0; i < arr.length; i+= cols) {
                matrix.push(arr.slice(i, cols + i));
            }
        }
    
        return matrix;
    };
    
    var a = [0, 1, 2, 3, 4, 5, 6, 7];
    matrixify(a, 2, 4);
    

    http://jsfiddle.net/andrewwhitaker/ERAUs/

提交回复
热议问题