JavaScript-de spready ulanyp massiwdaky ekstremal bahalary

Aşakdaky koda serediň:

javascriptlet max = Math.max(1, 2, 3, 4, 5);

Görşüňiz ýaly, bu koda sanlaryň iň uly sany tapylýar. Ýöne sanlarymyz massiw görnüşinde bolsa näme etmeli? Mysal üçin, şeýle:

javascriptlet arr = [1, 2, 3, 4, 5];

Biziň, peýdaly, aşakdakyny edip bolmayar:

javascriptlet arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // bu ýerde massiw geçirip bolmaz

Elbetde, biz massiw elementlerini Math.max-a gol bilen goýup bileris, şeýle:

javascriptlet arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);

Şonda-da, bu ýagdaýda ähli ýönekeýlik ýitirilýär: biziň kodymyz diňe 5 elementli massiw üçin iň uly bahany tapar.

Massiwde has köp ýa-da az element gerek bolsa näme etmeli? Çözgüt bar! Spready operator ulanalyň:

javascriptlet arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);

Bu kod, onuň ýönekeýligine garamazdan, örän kuwwatly. Sebäbi Math.max islendik sanda parametrler kabul edip biler, ýagny spready operator arkaly biz islendik ölçegli massiw ulanup bileris!

Задание 1

Sanalry bilen massiw berlen. Math.min we spready ulanyp massiwyň iň kiçi bahasyny ekrana çykaryň.