Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.
Math.max()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julio de 2015.
La funciónMath.max() retorna el mayor de cero o más números dados como parámetros de entrada, oNaN si cualquier parámetro no es un número y no puede ser convertido en uno.
In this article
Pruébalo
console.log(Math.max(1, 3, 2));// Expected output: 3console.log(Math.max(-1, -3, -2));// Expected output: -1const array1 = [1, 3, 2];console.log(Math.max(...array1));// Expected output: 3Sintaxis
Math.max();Math.max(valor0);Math.max(valor0, valor1);Math.max(valor0, valor1, /* ... ,*/ valorN);Parámetros
valor1,valor2, ... ,valorNCero o más números entre los cuales el mayor valor será seleccionado y retornado.
Valor retornado
El mayor de los números dados. Si uno o más de los parámetros no puede ser convertido aun número, retornaNaN. El resultado es-Infinity si no se proveen parámetros.
Descripción
Comomax() es un método estático deMath, siempre se usacomoMath.max(), en lugar de como un método de un objetoMathcreado (Math no es un constructor).
Si no se proveen argumentos, el resultado es -Infinity.
Si al menos uno de los argumentos no puede ser convertido a número, el resultado esNaN.
Ejemplos
>Usando Math.max()
Math.max(10, 20); // 20Math.max(-10, -20); // -10Math.max(-10, 20); // 20Obteniendo el elemento máximo de un arreglo
Se puede usarArray.reduce() para encontrar elelemento máximo en un arreglo numérico, comparando cada valor:
var arr = [1, 2, 3];var max = arr.reduce(function (a, b) { return Math.max(a, b);}, -Infinity);La siguiente función usaFunction.prototype.apply() para obtener el máximode un arreglo.getMaxOfArray([1, 2, 3]) es equivalente aMath.max(1, 2, 3), pero se puede usargetMaxOfArray() enarreglos construidos de manera programada. Esto debería ser usado solamente para arreglos conrelativamente pocos elementos.
function getMaxOfArray(numArray) { return Math.max.apply(null, numArray);}La nuevasintaxis extendidaes una manera más corta de escribir la solución conapply para obtenerel máximo de un arreglo:
var arr = [1, 2, 3];var max = Math.max(...arr);Sin embargo, tanto la sintaxis extendida (...) comoapply fallarán o retornaránun resultado incorrecto si el arreglo tiene demasiados elementos, porque intentan pasar el arreglode elementos como parámetros de función.Verapply y funciones incorporadaspara más detalles. La solución conreduce no tiene este problema.
Especificaciones
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-math.max> |