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 Latest Draft (ECMA-262)
La définition de 'Math.max' dans cette spécification.
Projet  

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobileServeur
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung InternetNode.js
maxChrome Support complet 1Edge Support complet 12Firefox Support complet 1IE Support complet 3Opera Support complet OuiSafari Support complet OuiWebView Android Support complet 1Chrome Android Support complet 18Firefox Android Support complet 4Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android Support complet 1.0nodejs Support complet Oui

Légende

Support complet  
Support complet

Voir aussi