BLACK FRIDAY

остался 1 день

Скидка 10% и подарок на выбор — при покупке одной программы
При покупке двух программ  — вторая со скидкой 50%

Как найти минимальный элемент массива js

Ответы
Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
22 октября 2021

Найти минимальное значение в массиве можно простым перебором и сравнением:

const numbers = [3, 4, 9, 3, 5, 1, 7]; // исходный массив

// создадим переменную в которую будем сохранять текущее минимальное значение
// установим в нее значение из первого элемента массива
let minimum = numbers[0];
for (const item of numbers) {
  if(item < minimum) {
    minimum = item; // если находим другое минимальное число, то сохраняем в переменную
  }
}
console.log(minimum); // => 1

Также можно воспользоваться встроенным методом Math.min() в сочетании со spread оператором:

const numbers = [3, 4, 9, 3, 5, 1, 7]; // исходный массив

const minimum = Math.min(...numbers);
console.log(minimum); // => 1
Аватар пользователя Виктория Аблаева
Виктория Аблаева
19 октября 2022

Для нахождения минимального элемента в массиве предлагаю написать собственную функцию с использованием функции высшего порядка reduce и стандартного метода Math.min():

const numbers = [-94, 87, 12, 0, -67, 32];
const min = (values) => values.reduce((x, y) => Math.min(x, y));
console.log(min(numbers)); // => -94

По факту в этой функции мы делаем обычную агрегацию. Берём попарно элементы массива и при каждой итерации находим из них минимальный.

Следующий вариант — использование стандартного метода Math.min():

const numbers = [-94, 87, 12, 0, -67, 32];
const minValue = Math.min.apply(null, numbers);
console.log(minValue); // => -94

В примере выше не забудьте про null, иначе в переменную minValue вернётся Infinity.

Также стоит вспомнить про библиотеку Lodash:

const numbers = [-94, 87, 12, 0, -67, 32];
console.log(_.min(numbers)); // => -94

Документация:

Добавьте ваш ответ

Рекомендуемые курсы

полифиллы
AJAX
события
селекторы
20 часов
Посмотреть
утверждения
jest
матчеры
юнит-тесты
14 часов
Посмотреть
состояние
JSX
компоненты
производительность
26 часов
Посмотреть