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]);
Бірақ, бұл жағдайда барлық әмбебаптық жоғалады:
біздің код тек 5 элементтен тұратын массив үшін
ең үлкен мәнді таба алады.
Ал егер бізге массивте көбірек немесе аз элемент қажет болса ше? Шешім бар! Spread операторын қолданайық:
let arr = [1, 2, 3, 4, 5]
let max = Math.max(...arr);
Бұл код, оның қарапайымдылығына қарамастан, өте
күшті. Өйткені Math.max кез келген санындағы
параметрлерді қабылдай алады, демек spread операторының
көмегімен біз кез келген өлшемдегі массивті қолдана аламыз!
Сандары бар массив берілген. Math.min
және spread қолданып, массивтің ең кіші мәнін
экранға шығарыңыз.