Math.max() в JavaScript
Math.max() возвращает максимальное число из переданных значений.
console.log(Math.max(10, 3, 25));
Результат:
25
Метод полезен, когда нужно выбрать самое большое значение: оценку, цену, ширину, лимит или результат расчета.
Что делает Math.max()
Math.max() сравнивает числа и возвращает самое большое из них.
let maxScore = Math.max(72, 91, 84);
console.log(maxScore);
Результат:
91
Исходные значения при этом не меняются. Метод просто возвращает результат сравнения.
Синтаксис
Math.max(value1, value2, value3)
В метод можно передать одно или несколько чисел через запятую.
console.log(Math.max(5));
console.log(Math.max(5, 2));
console.log(Math.max(5, 2, 9));
Результат:
5
5
9
Несколько значений
Значения можно передавать не только напрямую, но и через переменные.
let first = 14;
let second = 9;
let third = 21;
let max = Math.max(first, second, third);
console.log(max);
Результат:
21
Такой код читается проще, чем несколько условий, если задача только в том, чтобы найти максимальное число.
Массив чисел
Math.max() ждет отдельные числа, а не массив.
let numbers = [10, 3, 25];
console.log(Math.max(numbers));
Результат:
NaN
Чтобы найти максимум в массиве, используйте spread-оператор …. Он передает элементы массива как отдельные значения.
let numbers = [10, 3, 25];
console.log(Math.max(...numbers));
Результат:
25
Пустой массив
Если массив пустой, результат может быть неожиданным.
console.log(Math.max(...[]));
Результат:
-Infinity
Поэтому, если массив может быть пустым, его лучше проверить заранее.
let numbers = [];
if (numbers.length > 0) {
console.log(Math.max(...numbers));
} else {
console.log('Нет чисел для сравнения');
}
Ограничение снизу
Math.max() удобно использовать, чтобы не дать числу стать меньше нужного минимума.
let width = 280;
let minWidth = 320;
let safeWidth = Math.max(width, minWidth);
console.log(safeWidth);
Результат:
320
Если значение уже больше минимума, метод вернет само значение.
console.log(Math.max(500, 320));
Результат:
500
Итого
Math.max() возвращает максимальное число из переданных значений.
Math.max(10, 3, 25)вернет25.- Метод принимает отдельные значения через запятую.
- Для массива используйте spread:
Math.max(…numbers). - Для пустого массива
Math.max(…[])вернет-Infinity. Math.max()можно использовать, чтобы ограничить значение снизу.