在 JavaScript 中交替组合数组元素

问题

我们需要编写一个 JavaScript 函数,该函数接受任意数量的文字数组作为输入。

我们的函数应该准备一个新数组,其中包含从所有输入数组中交替选取的元素。

例如,如果函数的输入是 -

输入

const arr1 = [1, 2, 3, 4];

const arr2 = [11, 12, 13, 14];

const arr3 = ['a', 'b', 'c'];

输出

const output = [1, 11, 'a', 2, 12, 'b', 3, 13, 'c', 4, 14];

示例

以下是代码 -

const arr1 = [1, 2, 3, 4];

const arr2 = [11, 12, 13, 14];

const arr3 = ['a', 'b', 'c'];

const pickElements = (...arrs) => {

   const res = [];

   const max = Math.max(...arrs.map(el => el.length));

   for(let i = 0; i < max; i++){

      for (let j = 0; j < arrs.length; j++){

         if(arrs[j][i]){

            res.push(arrs[j][i]);

         }

      };

   };

   return res;

};

console.log(pickElements(arr1, arr2, arr3));

输出结果
[ 1, 11, 'a', 2, 12, 'b', 3, 13, 'c', 4, 14 ]

以上是 在 JavaScript 中交替组合数组元素 的全部内容, 来源链接: utcz.com/z/359462.html

回到顶部