Javascript 按列二维数组分解
是否有一种简洁的方法来分解二维数组,为每列分配一个变量 例如:Javascript 按列二维数组分解,javascript,Javascript,是否有一种简洁的方法来分解二维数组,为每列分配一个变量 例如: const matrix = [ [1,2,3,4,5], [1,2,3,4,5], [1,2,3,4,5] ] const [ones, twos, threes, fours, fives] = foo(matrix); console.log(ones); // [1, 1, 1] console.log(twos); // [2, 2, 2] etc. 干杯 p从 const矩阵=[ [1,2,3,4,5]
const matrix = [
[1,2,3,4,5],
[1,2,3,4,5],
[1,2,3,4,5]
]
const [ones, twos, threes, fours, fives] = foo(matrix);
console.log(ones);
// [1, 1, 1]
console.log(twos);
// [2, 2, 2]
etc.
干杯
p从
const矩阵=[
[1,2,3,4,5],
[1,2,3,4,5],
[1,2,3,4,5]
]
函数转置(a){
返回Object.keys(a[0]).map(函数(c){
返回a.map(函数(r){返回r[c];});
});
}
常数[一,二,三,四,五]=转置(矩阵);
console.log('one',one)代码>您需要首先转置矩阵
const
transpose=array=>array.reduce((r,a)=>a.map((v,i)=>[…(r[i]| |[]),v]),[]),
矩阵=[[1,2,3,4,5],[1,2,3,4,5],[1,2,3,4,5],
[一,二,三,四,五]=转置(矩阵);
控制台日志(个);
控制台日志(两个);
控制台日志(三个);
控制台日志(四个);
控制台日志(五个)代码>
.as控制台包装{最大高度:100%!重要;顶部:0;}
const矩阵=[
[1,2,3,4,5],
[1,2,3,4,5],
[1,2,3,4,5]
]
函数foo(矩阵){
让列=[]
for(矩阵中的常数i){
对于(矩阵[i]中的常数j){
第[j]列=第[j]列
列[j].push(矩阵[i][j])
}
}
返回列
}
常数[一,二,三,四,五]=foo(矩阵);
控制台日志(个);
// [1, 1, 1]
控制台日志(两个);
//[2,2,2]