繁体   English   中英

按顺序合并两个奇数和偶数数组

[英]Merge two arrays of odd and even numbers in sequence

我正在处理一个 JavaScript 问题,如下所示。

所以我有两个数组,其中包含奇数和偶数,如下所示。

A = [1,3,5,7] B = [2,4,6,8]

我想合并它们,使得结果数组如下:

C = [1,2,3,4,5,6,7,8]

我试过使用 concat(),但我不认为这是要走的路。

有没有办法做到这一点?

 let A = [1,3,5,7]; let B = [2,4,6,8]; let C = A.concat(B).sort(); console.log(C);

您可以像下面这样连接和排序

    let A = [1,3,5,7];
    let B = [2,4,6,8];
    let C = A.concat(B);
    console.log(C.sort())

你也可以用简单的 for 循环来做到这一点,

 let A = [1,3,5,7]; let B = [2,4,6,8]; let C = []; for (let i = 0; i < A.length; i++) { C.push(A[i]); C.push(B[i]); } console.log(C)

如果你想使用reduce,

 let A = [1,3,5,7]; let B = [2,4,6,8]; const C = B.reduce((result,current)=> result.concat(current), A).sort(); console.log(C);

 let A = [1,3,5,7];
 let B = [2,4,6,8];
 let C = [];
 let j = 0;
 let k = 0;
    for (let i = 1; i <=8 ; i++) {
       if( i % 2 != 0)
       {
          C.push(A[j]);
          j = j + 1;
       } else {
          C.push(B[k]);
          k = k + 1;
       }
    }
    console.log(C)

非常简单,只需这样做:

  const A = [1,3,5,7];
  const B = [2,4,6,8];
  console.log(A.concat(B).sort());

您可以使用 es6 功能之一,然后对其进行排序:

const a = [1,3,5,7];
const b = = [2,4,6,8];

const c = [...a, ...b].sort((a, b) => a - b);

您可以在此处阅读有关排序的更多信息

它非常容易,简单地解决您的问题

var a = [1,3,5,7];
var b = [2,4,6,8];

console.log([...a,...b].sort())

您可以随后将 .concat() 与 .sort() 一起使用。 例如

 const A = [1,3,5,7]; const B = [2,4,6,8]; const C = A.concat(B).sort(); console.log(C);

暂无
暂无

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

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