我有两个大小相同的javascript数组:
let a = [1,2,3,4,5]
let b = [6,7,8,9,10]
我想以这种方式合并:
let out = [1,6,2,7,3,8,4,9,5,10] //no adjecent elements from same array
目前,我通过循环对其进行迭代:
let a = [1,2,3,4,5]
let b = [6,7,8,9,10]
let out = []
for(let i =0;i<a.length;i++){
out.push(a[i])
out.push(b[i])
}
console.log(out)
有没有其他/更好的方法来进行合并?
最佳答案
这里可以使用相对较新的数组方法.flatMap()
。它允许您将值映射到数组,然后将其展平为更大的结果数组。在这里,您可以使用索引将a
中的每个值映射到包含自身的数组,并在b
中包含其对应的值。然后,此数组将成为更大的结果数组的一部分:
let a = [1,2,3,4,5]
let b = [6,7,8,9,10]
let out = a.flatMap((v, i) => [v, b[i]]);
console.log(out)