如何旋转Javascript中表示为单个数组的4x8网格



假设我有一个矩形4x8网格,用javascript:中的值数组表示

var grid = [
            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,    
];

如何将这个数组向左旋转90度,使其成为8x4网格?

我试着在其他问题上玩弄解决方案,比如这个问题:

如何在javascript 中旋转数组中的矩阵

但答案只涉及正方形网格。

如有任何帮助,我们将不胜感激。

var rows = 8;
var cols = 4;
var rotatedGrid = [];
var row = 0;
var col = 0;
for (col = cols - 1; col >= 0; col--)
{
    for (row = 0; row < rows; row++)
    {
        rotatedGrid.push(grid[row * cols + col]);
    }
}