Funkcija, kas apvieno masīvus vienā JavaScript
Tagad realizēsim funkciju merge,
kura parametriem pieņem patvaļīgu skaitu
masīvu un apvieno to elementus vienā masīvā.
Lūk, mūsu funkcijas darbības piemērs:
let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // izvadīs [1, 2, 3, 4, 5, 6, 7, 8, 9]
Ķersimies pie realizācijas. Vispirms iegūstam padotos masīvus kā vienu divdimensiju massīvu:
merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
function merge(...arrs){
console.log(arrs); // izvadīs [ [1, 2, 3,] [4, 5, 6], [7, 8, 9] ]
}
Tagad sapludināsim šo divdimensiju masīvu
vienā dimensijā. Izmantosim metodi
concat un spread operatoru:
let arrs = [ [1, 2, 3,], [4, 5, 6], [7, 8, 9] ];
let result = [].concat(...arrs);
console.log(result); // izvadīs [1, 2, 3, 4, 5, 6, 7, 8, 9]
Pievienosim šo kodu mūsu funkcijai merge:
function merge(...arrs) {
return [].concat(...arrs);
}
let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // izvadīs [1, 2, 3, 4, 5, 6, 7, 8, 9]
Kā jūs varat redzēt, arī šī funkcija izrādījās ļoti lakoniska.