[英]javascript array merge based on indexes
我有一個數組,需要與相同的索引值合並,如 0 將變為['0','0','1','2']
例子:
0:
0: (2) ['0', '0']
1: (2) ['0', '0']
2: (2) ['0', '2']
1:
0: ['1']
1: ['2']
2: ['2']
2:
0: ['2']
1: ['2']
2: ['2']
試過了
var result = outterArray.reduce(function (a, b) {
return a.map(function (v, i) {
return [v] + b[i];
});
});
但得到
0: "0,012"
1: "0,022"
2: "0,222"
預期的 :
0: "[0,0,1,2]"
1: "[0,0,2,2]"
2: "[0,2,2,2]"
假設下面的數組,您可以映射內部數組並從累加器中獲取相同索引或空數組的值。
const data= [ [['0', '0'], ['0', '0'], ['0', '2']], [['1'], ['2'], ['2']], [['2'], ['2'], ['2']] ], result = data.reduce((r, a) => a.map((v, i) => [...(r[i] || []), ...v]), []); console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.