JavaScript да spread ёрдамида массивнинг экстремал қийматлари
Куйидаги кодга қара:
javascriptlet max = Math.max(1, 2, 3, 4, 5);
Куриб турганингиздек, бу кодда сонларнинг энги каттаси топилмокда. Лекин агар бизнинг сонларимиз массив кўринишида бўлса? Масалан, мана шундай:
javascriptlet arr = [1, 2, 3, 4, 5];
Афсуски, биз куйидагини қила олмаймиз:
javascriptlet arr = [1, 2, 3, 4, 5];
let max = Math.max(arr); // бу ерда массив ўтказа олмаймиз
Албатта, биз Math.max ичида массив элементларини
ўзимиз қўйишимиз мумкин, мана шундай:
javascriptlet arr = [1, 2, 3, 4, 5];
let max = Math.max(arr[0], arr[1], arr[2], arr[3], arr[4]);
Бирок, бу ҳолда барча универсаллик йўқолadi:
бизнинг кодимиз фақат 5 та элементли
массив учунгина энг катта қийматни топади.
Агар бизга массивда кўпроқ ёки камроқ элемент керек бўлса? Ечим бор! Spread операторидан фойдаланамиз:
javascriptlet arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Бу код, унинг соддалигига қарамай, жуда
кучли. Чунки Math.max исталганча параметрларни
қабул қила олади, демак spread оператори ёрдамида биз
исталган ҳажмдаги массивдан фойдалана оламиз!
Сонлардан иборат массив берилган. Math.min
ва spread дан фойдаланиб, массивнинг энг кичик қийматини
экрангa чиқаринг.