Math.max()
Базовый уровень Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Статический метод Math.max() возвращает наибольшее из чисел, переданных в качестве входных параметров, или -Infinity, если параметры отсутствуют.
Попробуйте
console.log(Math.max(1, 3, 2)); // Expected output: 3 console.log(Math.max(-1, -3, -2)); // Expected output: -1 const array = [1, 3, 2]; console.log(Math.max(...array)); // Expected output: 3
Синтаксис
Math.max() Math.max(value1) Math.max(value1, value2) Math.max(value1, value2, /* …, */ valueN)
Параметры
-
value1, …,valueN - Ноль или более чисел, среди которых будет выбрано и возвращено наибольшее значение.
Возвращаемое значение
Наибольшее из заданных чисел. Возвращает NaN, если какой-либо из параметров является или преобразуется в NaN. Возвращает -Infinity, если параметры не предоставлены.
Описание
Поскольку max() является статическим методом Math, вы всегда используете его как Math.max(), а не как метод созданного вами объекта Math (Math не является конструктором).
Math.max.length равно 2, что косвенно указывает на то, что он предназначен для обработки как минимум двух параметров.
Примеры
Использование Math.max()
Math.max(10, 20); // 20 Math.max(-10, -20); // -10 Math.max(-10, 20); // 20
Получение максимального элемента массива
Array.prototype.reduce() может быть использован для поиска максимального элемента в числовом массиве путем сравнения каждого значения:
const arr = [1, 2, 3]; const max = arr.reduce((a, b) => Math.max(a, b), -Infinity);
Следующая функция использует Function.prototype.apply() для получения максимума массива. getMaxOfArray([1, 2, 3]) эквивалентен Math.max(1, 2, 3), но вы можете использовать getMaxOfArray() на программно построенных массивах. Это следует использовать только для массивов с относительно небольшим количеством элементов.
function getMaxOfArray(numArray) {
return Math.max.apply(null, numArray);
}
Синтаксис расширения (spread syntax) — это более короткий способ написания решения apply для получения максимума массива:
const arr = [1, 2, 3]; const max = Math.max(...arr);
Однако, как расширение (...), так и apply либо завершатся ошибкой, либо вернут неверный результат, если массив содержит слишком много элементов, поскольку они пытаются передать элементы массива в качестве параметров функции. Дополнительные сведения см. в разделе Использование apply и встроенных функций. Решение reduce не имеет этой проблемы.
Спецификации
Совместимость с браузерами
| Десктопные | Мобильные | Серверные | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
max |
1 |
12 |
1 |
3 |
1 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
1.0.0 |
1.0 |
0.10.0 |
Смотрите также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max