Ekstremverdier i array ved hjelp av spread i JavaScript
Se på følgende kode:
let max = Math.max(1, 2, 3, 4, 5);
Som du ser, finner denne koden det største av tallene. Men hva gjør vi hvis tallene våre er representert som en array? For eksempel, slik:
let arr = [1, 2, 3, 4, 5];
Vi kan dessverre ikke gjøre følgende:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // her kan man ikke sende en array
Selvfølgelig kan vi manuelt sette inn elementene
fra arrayen i Math.max, slik:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);
Men i dette tilfellet går all allsidighet tapt:
koden vår vil bare finne maksimalverdi
for en array med 5 elementer.
Hva om vi trenger flere eller færre elementer i arrayen? Det finnes en løsning! Bruk spread-operatoren:
let arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Denne koden, til tross for sin enkelhet, er veldig
kraftig. Tross alt kan Math.max ta imot
hvilket som helst antall parametere, og det betyr at ved hjelp av
spread-operatoren kan vi bruke en array
av vilkårlig størrelse!
Det er gitt en array med tall. Bruk Math.min
og spread for å skrive ut den minste verdien
i arrayen.