laimas,
не очень понимаю как очень просто брать эти срезы
вариант решения
function matrix(c, d) {
for (var g = [], a = 0; a < d * d; a += c) {
for (var f = [], e = [], b = 0; b < c; b++) e.push(a + b + 1);
f.push(e);
for (b = 0; b < c - 1; b++) e = e.map(function(a) {
return a + d
}), f.push(e);
g.push(f);
!a || (a + c) % d || (a += d * (c - 1))
}
return g
};
alert(JSON.stringify(matrix(2,4)))// матрицу 4 на 4 разбить 2 на 2
alert(JSON.stringify(matrix(3,9)))//этоn же вариант и для матрицы 9 на 9 на 3 на 3 ... matrix(3,9)