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() можно использовать, чтобы ограничить значение снизу.