Funkcija, sujungianti masyvus į vieną JavaScript'e
Dabar įgyvendinkime funkciją merge,
kuri kaip parametrus priima bet kokį kiekį
masyvų ir sujungia jų elementus į vieną masyvą.
Štai mūsų funkcijos veikimo pavyzdys:
let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // išvests [1, 2, 3, 4, 5, 6, 7, 8, 9]
Pradėkime įgyvendinimą. Pirmiausia gaukime perduotus masyvus kaip vieną dvimatį masyvą:
merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
function merge(...arrs){
console.log(arrs); // išvests [ [1, 2, 3,] [4, 5, 6], [7, 8, 9] ]
}
Dabar sulieskime šį dvimatį masyvą
į vienmatį. Tam naudokime metodą
concat ir spread operatorių:
let arrs = [ [1, 2, 3,], [4, 5, 6], [7, 8, 9] ];
let result = [].concat(...arrs);
console.log(result); // išvests [1, 2, 3, 4, 5, 6, 7, 8, 9]
Įdėkime šį kodą į mūsų funkciją merge:
function merge(...arrs) {
return [].concat(...arrs);
}
let result = merge([1, 2, 3], [4, 5, 6], [7, 8, 9]);
console.log(result); // išvests [1, 2, 3, 4, 5, 6, 7, 8, 9]
Kaip matote, ši funkcija taip pat pasirodė labai glausti.