Ekstreme værdier af array ved brug af spread i JavaScript
Se på følgende kode:
let max = Math.max(1, 2, 3, 4, 5);
Som du kan se, finder denne kode det maksimale af tallene. Men hvad gør man, hvis vores tal er repræsenteret som et array? For eksempel sådan her:
let arr = [1, 2, 3, 4, 5];
Vi kan desværre ikke gøre følgende:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // her kan man ikke sende et array
Selvfølgelig kan vi manuelt indsætte elementerne
fra arrayet i Math.max, sådan her:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);
Men i dette tilfælde går al universalitet tabt:
vores kode vil kun finde den maksimale værdi
for et array med 5 elementer.
Og hvad hvis vi har brug for flere eller færre elementer i arrayet? Der er en løsning! Brug spread-operatoren:
let arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Denne kode, på trods af sin enkelhed, er meget
kraftfuld. For Math.max kan tage
et hvilket som helst antal parametre, hvilket betyder, at vi ved hjælp af
spread-operatoren kan bruge et array
af enhver størrelse!
Givet et array med tal. Brug Math.min
og spread til at vise den minimale værdi af
arrayet.