Math
Baseline
Widely available
*
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
L'objet espace de noms Math contient des propriétés et des méthodes statiques pour les constantes et fonctions mathématiques.
Math fonctionne avec le type Number. Il ne fonctionne pas avec BigInt.
Description
Contrairement à la plupart des objets natifs standards, Math n'est pas un constructeur. Vous ne pouvez pas l'utiliser avec l'opérateur new ni invoquer l'objet Math comme une fonction. Toutes les propriétés et méthodes de Math sont statiques.
Note :
De nombreuses fonctions de Math ont une précision qui dépend de l'implémentation.
Cela signifie que différents navigateurs peuvent donner des résultats différents. Même un même moteur JavaScript, sur un autre système d'exploitation ou une autre architecture, peut donner des résultats différents !
Propriétés statiques
Math.E-
Nombre d'Euler, la base des logarithmes naturels ; environ
2,718. Math.LN10-
Logarithme naturel de
10; environ2,303. Math.LN2-
Logarithme naturel de
2; environ0,693. Math.LOG10E-
Logarithme en base 10 de
E; environ0,434. Math.LOG2E-
Logarithme en base 2 de
E; environ1,443. Math.PI-
Quotient de la circonférence d'un cercle par son diamètre ; environ
3,14159. Math.SQRT1_2-
Racine carrée de ½ ; environ
0,707. Math.SQRT2-
Racine carrée de
2; environ1,414. Math[Symbol.toStringTag]-
La valeur initiale de la propriété
[Symbol.toStringTag]est la chaîne de caractères"Math". Cette propriété est utilisée dansObject.prototype.toString().
Méthodes statiques
Math.abs()-
Retourne la valeur absolue de l'argument.
Math.acos()-
Retourne l'arc cosinus de l'argument.
Math.acosh()-
Retourne l'arc cosinus hyperbolique de l'argument.
Math.asin()-
Retourne l'arc sinus de l'argument.
Math.asinh()-
Retourne l'arc sinus hyperbolique de l'argument.
Math.atan()-
Retourne l'arc tangente de l'argument.
Math.atan2()-
Retourne l'arc tangente du quotient de ses arguments.
Math.atanh()-
Retourne l'arc tangente hyperbolique de l'argument.
Math.cbrt()-
Retourne la racine cubique de l'argument.
Math.ceil()-
Retourne le plus petit entier supérieur ou égal à l'argument.
Math.clz32()-
Retourne le nombre de zéros de tête dans la représentation binaire sur 32 bits de l'argument.
Math.cos()-
Retourne le cosinus de l'argument.
Math.cosh()-
Retourne le cosinus hyperbolique de l'argument.
Math.exp()-
Retourne ex, où x est l'argument, et e est le nombre d'Euler (
2,718…, la base du logarithme naturel). Math.expm1()-
Retourne le résultat de
exp(x)moins1. Math.floor()-
Retourne le plus grand entier inférieur ou égal à l'argument.
Math.f16round()-
Retourne la représentation flottante en demi-précision (angl.) la plus proche de l'argument.
Math.fround()-
Retourne la représentation flottante en simple précision (angl.) la plus proche de l'argument.
Math.hypot()-
Retourne la racine carrée de la somme des carrés de ses arguments.
Math.imul()-
Retourne le résultat de la multiplication d'entiers sur 32 bits de ses arguments.
Math.log()-
Retourne le logarithme naturel (㏒e ; aussi, ㏑) de l'argument.
Math.log10()-
Retourne le logarithme en base 10 de l'argument.
Math.log1p()-
Retourne le logarithme naturel (㏒e ; aussi ㏑) de
1 + xpour le nombrex. Math.log2()-
Retourne le logarithme en base 2 de l'argument.
Math.max()-
Retourne la plus grande valeur parmi zéro ou plusieurs nombres.
Math.min()-
Retourne la plus petite valeur parmi zéro ou plusieurs nombres.
Math.pow()-
Retourne la base
xélevée à la puissancey(c'est-à-direxy). Math.random()-
Retourne un nombre pseudo-aléatoire compris entre
0et1. Math.round()-
Retourne la valeur de l'argument arrondie à l'entier le plus proche.
Math.sign()-
Retourne le signe de l'argument, indiquant s'il est positif, négatif ou nul.
Math.sin()-
Retourne le sinus de l'argument.
Math.sinh()-
Retourne le sinus hyperbolique de l'argument.
Math.sqrt()-
Retourne la racine carrée positive de l'argument.
Math.sumPrecise()-
Retourne la somme d'un itérable de nombres passé en argument, en évitant la perte de précision en virgule flottante lors des résultats intermédiaires.
Math.tan()-
Retourne la tangente de l'argument.
Math.tanh()-
Retourne la tangente hyperbolique de l'argument.
Math.trunc()-
Retourne la partie entière de l'argument, en supprimant toute partie fractionnaire.
Exemples
>Convertir entre degrés et radians
Les fonctions trigonométriques sin(), cos(), tan(), asin(), acos(), atan() et atan2() attendent (et retournent) des angles en radians.
Comme les humain·e·s ont tendance à penser en degrés, et que certaines fonctions (comme les transformations CSS) peuvent accepter des degrés, il est utile d'avoir des fonctions à portée de main pour convertir entre les deux :
function degToRad(degrees) {
return degrees * (Math.PI / 180);
}
function radToDeg(rad) {
return rad / (Math.PI / 180);
}
Calculer la hauteur d'un triangle équilatéral
Si nous voulons calculer la hauteur d'un triangle équilatéral et que nous savons que la longueur de ses côtés est de 100, nous pouvons utiliser la formule longueur de l'adjacent multipliée par la tangente de l'angle est égale à l'opposé.

En JavaScript, on peut faire cela avec :
50 * Math.tan(degToRad(60));
Nous utilisons notre fonction degToRad() pour convertir 60 degrés en radians, car Math.tan() attend une valeur d'entrée en radians.
Retourner un entier aléatoire entre deux bornes
Cela peut être réalisé avec une combinaison de Math.random() et Math.floor() :
function random(min, max) {
const num = Math.floor(Math.random() * (max - min + 1)) + min;
return num;
}
random(1, 10);
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-math-object> |