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