繁体   English   中英

在javascript中合并N个数组值

[英]combine N number of array values in javascript

var arr= [[1,2,3],[1,2],[1,2,3,4]];

以下是我的静态示例数组。 在这里,我所做的是结合第一,第二和第三数组的值。

for (var a1=0;a1<arr[0].length;a1++) {
    for (var a2=0;a2<arr[1].length;a2++) {
        for (var a3=0;a3<arr[2].length;a3++) {
            console.log(arr[0][a1]+""+arr[1][a2] + "" +arr[2][a3]);
        }
    }
}
//Output
//111,112,113,114,121,122,123,124
//211,212,213,214,221,222,223,224
//311,312,313,314,321,322,323,324

[[1,2,3],[1,2]]
所以在这里我如何组合值是// 11,12,21,22,31,32

所以将来数组不会是静态的。 是否有内置的javascript函数可以执行相同的操作

还是我该如何使其动态?

您可以在此回调中使用Array.reduce

function combine(p,v){
  var r = []
  for(var i=0;i<p.length;i++){
    for(var j=0;j<v.length;j++){
      r.push([p[i],v[j]].join(''))
    }
  }
  return r
}
var x = a.reduce(combine,[''])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM