Extremvärden för array med spread i JavaScript
Titta på följande kod:
let max = Math.max(1, 2, 3, 4, 5);
Som du ser, hittas det maximala talet i denna kod. Men vad ska man göra om våra tal finns i form av en array? Till exempel, så här:
let arr = [1, 2, 3, 4, 5];
Vi kan tyvärr inte göra följande:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // här kan man inte skicka en array
Självklart kan vi manuellt sätta in elementen från
arrayen i Math.max, så här:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);
Dock försvinner all universalitet i det här fallet:
vår kod kommer bara att hitta maxvärdet
för en array med 5 element.
Och tänk om vi behöver fler eller färre element i arrayen? Det finns en lösning! Vi använder spread-operatorn:
let arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Denna kod, trots sin enkelhet, är mycket
kraftfull. Eftersom Math.max kan acceptera
ett valfritt antal parametrar, betyder det att med hjälp av
spread-operatorn kan vi använda en array
med godtycklig storlek!
Given en array med tal. Använd Math.min
och spread för att skriva ut det minsta värdet
i arrayen.