Javascript 将一维数组中的两个合并到二维数组中
我有Javascript 将一维数组中的两个合并到二维数组中,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我有n(但现在,假设只有两个)一维数组,如我的控制台的图像: 我想通过相应的键合并这两个数组,并将其放入二维数组中: 结果是: [["1 279 226,08" , "127"],[null , null],["-188 033,77", "154"],..... so on ......] 并且一维数组的列表是动态的,它可以超过2个数组 例如,如果我有3个数组,那么我的二维数组如下所示: [ ["1 279 226,08" , "127" , "blabla"], [null , null
n
(但现在,假设只有两个)一维数组,如我的控制台的图像:
我想通过相应的键合并这两个数组,并将其放入二维数组中:
结果是:
[["1 279 226,08" , "127"],[null , null],["-188 033,77", "154"],..... so on ......]
并且一维数组的列表是动态的,它可以超过2个数组
例如,如果我有3个数组,那么我的二维数组如下所示:
[ ["1 279 226,08" , "127" , "blabla"], [null , null , "blabla"], ["-188 033,77", "154", "blabla"], ..... so on ......]
如果您有任何实现此功能的想法,我们将不胜感激。这将满足您的需求
var arr1=[1,2,3,4,5,6];
var arr2=[6,5,4,3,2,1];
var arr3=[7,8,9,10,11,5];
var arr4=[12,34,55,77,22,426];
var arrCollection=[arr1,arr2,arr3,arr4];
//如果数组大小可变。
//如果不是max=arrCollection[0],则长度可以
var max=Math.max.apply(Math,arrCollection.map)(函数(a){
返回a.length;
}));
var arrFinal=[];
for(设i=0;i 控制台日志(最终)
您可以使用两个forEach()
循环来创建它
var arr1=[[1,2]、[3,4]、[5,6];
var arr2=[[1,2,3],[4,5,6],[7,8],[9,10,12,14];
让合并=函数(arr){
var结果=[];
arr.forEach(函数(e,i){
e、 forEach(函数(a,j){
如果(!result[j])result[j]=[a];
else结果[j]。推送(a)
})
});
返回结果;
}
log(JSON.stringify(merge(arr1)))
console.log(JSON.stringify(merge(arr2))
您可以使用嵌套循环转置数组,并切换用于分配值的索引
var数组=[[1 279 226,08],null,“-188 033,77”],[127”,null,“154”],[“blabla”,“blablabla”,“blablabla”],
结果=数组.reduce(函数(r,a,i){
a、 forEach(函数(b,j){
r[j]=r[j]| |[];
r[j][i]=b;
});
返回r;
}, []);
控制台日志(结果)代码>
.as console wrapper{max height:100%!important;top:0;}
由于所有数组的大小都相同,因此可以在第一个数组的长度上循环,即a
然后我们将a
,b
,…,的单个值传递给appendArrays
,然后返回一个数组,将其推入合并的
var a=[“123”,空,“ciao”]
变量b=[“321”,1,“pippo”]
变量c=[“111”,5,“co”]
合并变量=[]
对于(i=0;i }
请添加文本形式的原始数据作为输入和相应的想要的输出以及您尝试过的内容。一维数组是否具有固定长度?它们大小相同吗?@RobertoRusso:长度是动态的,但所有数组的大小都相同。