Funcția care unește array-uri într-unul singur în JavaScript

Să implementăm acum funcția merge, care acceptă ca parametri un număr arbitrar de array-uri și le unește elementele într-un singur array.

Iată un exemplu de funcționare a funcției noastre:

javascriptlet result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // va afișa [1, 2, 3, 4, 5, 6, 7, 8, 9]

Să începem implementarea. Pentru început, să obținem array-urile transmise sub forma unui singur array bidimensional:

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

function merge(...arrs){
  console.log(arrs); // va afișa  [ [1, 2, 3,] [4, 5, 6], [7, 8, 9] ]
}

Să îmbinăm acum acest array bidimensional într-unul unidimensional. Vom folosi pentru aceasta metoda concat și operatorul spread:

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

let result = [].concat(...arrs);
console.log(result); // va afișa [1, 2, 3, 4, 5, 6, 7, 8, 9]

Să adăugăm acest cod în funcția noastră merge:

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

let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // va afișa [1, 2, 3, 4, 5, 6, 7, 8, 9]

După cum vedeți, și această funcție s-a dovedit foarte concisă.