【问题标题】:Merge 2 arrays in change [duplicate]合并2个数组的变化[重复]
【发布时间】:2019-12-29 20:31:07
【问题描述】:

我想合并两个数组,就像你可以折叠 2 包卡片一样——在带有 for 循环的丑陋代码中并假设长度相同,所以为了安全起见,没有 if 看起来像这样:

const arr = [1,2,3];
const rra = [4,5,6];
const result = [];

for(let i=0; i<arr.length; i++){
  result.push(arr[i],rra[i]);
}

console.log(result); // Array(6) [ 1, 4, 2, 5, 3, 6 ]

我知道 String.raw() 中有类似的东西,但它会切断最后一个元素并返回一个字符串,数组中是否有等价物?

String.raw({raw: [1,2,3]}, ...[4,5,6]); //"14253"

【问题讨论】:

  • 真正的问题是什么? String.raw 用于模板文字。
  • 我可以像上面的 for 循环一样合并两个数组,但在 1 行中使用一些内置方法/函数

标签: javascript arrays string


【解决方案1】:

您可以为此使用.flatMap() - 这与.map() 相同,然后是.flat()

const arr = [1,2,3];
const rra = [4,5,6];

let newArray = arr.flatMap((ele, i) => [ele, rra[i]]);

console.log(newArray);

【讨论】:

  • 对不起,作为好答案的标记迟了,我才意识到我可以做到。显然很好的答案正是我当时正在寻找的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-24
  • 2019-12-20
  • 2020-05-14
  • 2021-06-23
  • 2013-08-22
相关资源
最近更新 更多