Math.max()

La fonction Math.max() renvoie le plus grand nombre d'une série de 0 ou plusieurs nombres.

Syntaxe

Math.max([valeur1[,valeur2, ...]]) 

ParamĂštres

valeur1, valeur2, ...
Des nombres.

Valeur de retour

Le plus grand des nombres passĂ©s en arguments. S'il existe un des arguments qui ne peut pas ĂȘtre converti en nombre, c'est NaN qui sera renvoyĂ©.

Description

max() est une mĂ©thode statique de Math et doit toujours ĂȘtre utilisĂ©e avec la syntaxe Math.max(), elle ne doit pas ĂȘtre appelĂ©e comme la mĂ©thode d'un autre objet qui aurait Ă©tĂ© crĂ©Ă© (Math n'est pas un constructeur).

Si aucun argument n'est fourni, le résultat sera -Infinity.

Si au moins un des arguments ne peut pas ĂȘtre converti en un nombre, le rĂ©sultat sera NaN.

Exemple

Utiliser Math.max()

Math.max(10, 20);   //  20
Math.max(-10, -20); // -10
Math.max(-10, 20);  //  20

Obtenir l'élément maximum d'un tableau

La mĂ©thode Array.prototype.reduce() peut ĂȘtre utilisĂ©e pour dĂ©terminer la valeur maximale d'un tableau de nombre en comparant les valeurs qui se suivent :

var arr = [1, 2, 3];
var max = arr.reduce(function(a,b) {
  return Math.max(a, b);
});

On peut Ă©galement utiliser Function.prototype.apply() afin de trouver le maximum parmi un tableau de nombres. getMaxTableau([1,2,3]) sera Ă©quivalent Ă  Math.max(1, 2, 3), mais getMaxTableau pourra ĂȘtre utilisĂ© sur des tableaux de n'importe quelle taille.

function getMaxTableau(tableauNumérique) {
    return Math.max.apply(null, tableauNumérique);
}

Avec le nouvel opérateur de décomposition, on pourra également utiliser cette syntaxe, plus concise et plus simple :

var arr = [1, 2, 3];
var max = Math.max(...arr);

Attention avec la décomposition et apply() qui pourront échouer s'il y a trop d'éléments dans le tableau (car ceux-ci seront passés en arguments). Pour plus d'informations, consulter Utiliser apply() et les fonctions natives. La méthode proposée avec reduce() n'a pas cette contrainte.

Spécifications

SpĂ©cification État Commentaires
ECMAScript 1st Edition (ECMA-262) Standard Définition initiale. Implémentée avec JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
La définition de 'Math.max' dans cette spécification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
La définition de 'Math.max' dans cette spécification.
Standard  
ECMAScript (ECMA-262)
La définition de 'Math.max' dans cette spécification.
Standard Ă©volutif  

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi