Math.min() в JavaScript
Math.min() возвращает минимальное число из переданных значений.
console.log(Math.min(10, 3, 25));
Результат:
3
Метод полезен, когда нужно выбрать самое маленькое значение: цену, оценку, процент, расстояние или лимит.
Что делает Math.min()
Math.min() сравнивает числа и возвращает самое маленькое из них.
let minPrice = Math.min(1200, 800, 1500);
console.log(minPrice);
Результат:
800
Исходные значения при этом не меняются. Метод просто возвращает результат сравнения.
Синтаксис
Math.min(value1, value2, value3)
В метод можно передать одно или несколько чисел через запятую.
console.log(Math.min(5));
console.log(Math.min(5, 2));
console.log(Math.min(5, 2, 9));
Результат:
5
2
2
Несколько значений
Значения можно передавать не только напрямую, но и через переменные.
let first = 14;
let second = 9;
let third = 21;
let min = Math.min(first, second, third);
console.log(min);
Результат:
9
Такой код удобно читать: сразу видно, что мы ищем минимальное значение среди нескольких чисел.
Массив чисел
Math.min() ждет отдельные числа, а не массив.
let numbers = [10, 3, 25];
console.log(Math.min(numbers));
Результат:
NaN
Чтобы найти минимум в массиве, используйте spread-оператор …. Он передает элементы массива как отдельные значения.
let numbers = [10, 3, 25];
console.log(Math.min(...numbers));
Результат:
3
Пустой массив
Если массив пустой, результат может быть неожиданным.
console.log(Math.min(...[]));
Результат:
Infinity
Поэтому, если массив может быть пустым, его лучше проверить заранее.
let numbers = [];
if (numbers.length > 0) {
console.log(Math.min(...numbers));
} else {
console.log('Нет чисел для сравнения');
}
Ограничение сверху
Math.min() удобно использовать, чтобы не дать числу стать больше нужного лимита.
let value = 120;
let maxValue = 100;
let limitedValue = Math.min(value, maxValue);
console.log(limitedValue);
Результат:
100
Если value меньше лимита, метод вернет само значение.
console.log(Math.min(70, 100));
Результат:
70
Итого
Math.min() возвращает минимальное число из переданных значений.
Math.min(10, 3, 25)вернет3.- Метод принимает отдельные значения через запятую.
- Для массива используйте spread:
Math.min(…numbers). - Для пустого массива
Math.min(…[])вернетInfinity. Math.min()можно использовать, чтобы ограничить значение сверху.