Funkcia na zlúčenie polí do jedného v JavaScripte

Poďme teraz implementovať funkciu merge, ktorá ako parametre prijíma ľubovoľný počet poli a zlučuje ich prvky do jedného poľa.

Tu je príklad práce našej funkcie:

javascriptlet result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // vypíše [1, 2, 3, 4, 5, 6, 7, 8, 9]

Poďme na implementáciu. Najprv získajme odovzdané polia vo forme jedného dvojrozmerného poľa:

javascriptmerge([1, 2, 3], [4, 5, 6], [7, 8, 9]);

function merge(...arrs){
  console.log(arrs); // vypíše  [ [1, 2, 3,] [4, 5, 6], [7, 8, 9] ]
}

Poďme teraz zlúčiť toto dvojrozmerné pole do jednorozmerného. Použime na to metódu concat a operátor spread:

javascriptlet arrs   = [ [1, 2, 3,], [4, 5, 6], [7, 8, 9] ];

let result = [].concat(...arrs);
console.log(result); // vypíše [1, 2, 3, 4, 5, 6, 7, 8, 9]

Pridajme tento kód do našej funkcie merge:

javascriptfunction merge(...arrs) {
  return [].concat(...arrs);
}

let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // vypíše [1, 2, 3, 4, 5, 6, 7, 8, 9]

Ako vidíte, aj táto funkcia sa ukázala byť veľmi výstižná.