Extrémní hodnoty pole pomocí spread v JavaScriptu
Podívejte se na následující kód:
let max = Math.max(1, 2, 3, 4, 5);
Jak vidíte, v tomto kódu se nachází maximální z čísel. Ale co dělat, pokud jsou naše čísla reprezentována ve formě pole? Například takto:
let arr = [1, 2, 3, 4, 5];
Bohužel nemůžeme udělat následující:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // zde nelze předat pole
Samozřejmě můžeme ručně zadat prvky
pole do Math.max, takto:
let arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);
Avšak v tomto případě se ztrácí veškerá univerzálnost:
náš kód najde maximální hodnotu
pouze pro pole z 5 prvků.
A co když budeme potřebovat více nebo méně prvků v poli? Řešení existuje! Použijeme operátor spread:
let arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Tento kód, navzdory své jednoduchosti, je velmi
výkonný. Vždyť Math.max může přijímat
libovolný počet parametrů, a to znamená, že pomocí
operátoru spread můžeme použít pole
libovolné velikosti!
Je dáno pole s čísly. Použitím Math.min
a spread vypište na obrazovku minimální hodnotu
pole.