在javascript中将矩阵切成2个数组

时间:2012-10-18 14:55:40

标签: javascript

我试图切片矩阵,以便最终得到阵列。 因此,给定以下矩阵[[1,2],[3,4],[102,5]]有一种方法可以对它进行切片,以便最终得到[1,3,102]和[2,4,5] ?
也许它不是一片而是别的什么? 感谢

3 个答案:

答案 0 :(得分:5)

尝试使用the Array.reduce(...) method,因为函数编程很酷!

function splitMatrix(matrix) {
  return matrix.reduce(function(acc, x) {
    acc[0].push(x[0]);
    acc[1].push(x[1]);
    return acc;
  }, [[],[]]);
}

splitMatrix([[1,2],[3,4],[102,5]]); // => [[1,3,102], [2,4,5]]

答案 1 :(得分:1)

a = [[1,2],[3,4],[102,5]]
a1 = []
a2 = []
for(i = 0, i< a.length, i++){
    a1[i] = a[i][0]
    a2[i] = a[i][1]
}

答案 2 :(得分:1)

var matrix = [[1,2],[3,4],[102,5]];
var arr1 = [];
var arr2 = [];

for(var i=0; i < matrix.length; i++){
    arr1.push(matrix[i][0];
    arr2.push(matrix[i][1];
}