W3docs

L'objet Math en JavaScript

Apprenez l'objet Math en JavaScript : arrondis, puissances, racines, nombres aléatoires, trigonométrie et constantes comme Math.PI et Math.E, avec des exemples exécutables.

Introduction à l'objet Math en JavaScript

Math est un objet JavaScript intégré qui regroupe des constantes et des fonctions mathématiques. Contrairement à la plupart des objets, on ne crée jamais d'instance avec newMath est statique, vous appelez donc tout directement dessus : Math.round(...), Math.PI, etc. Toutes ses méthodes fonctionnent sur des nombres et complètent les opérateurs arithmétiques standard (+, -, *, /, %, **).

Ce guide explique ce que fait chaque méthode courante, les pièges fréquents (arrondis négatifs, génération d'un entier aléatoire dans une plage, comportement en cas d'entrée invalide), ainsi que les contextes dans lesquels ces fonctions sont utilisées en pratique, comme l'animation ou la finance.

Fonctions Math populaires

FonctionDescription
Math.abs(x)Retourne la valeur absolue de x.
Math.ceil(x)Retourne le plus petit entier supérieur ou égal à x.
Math.floor(x)Retourne le plus grand entier inférieur ou égal à x.
Math.round(x)Arrondit x à l'entier le plus proche.
Math.max(x, y, ...)Retourne le plus grand parmi zéro ou plusieurs nombres donnés en paramètres.
Math.min(x, y, ...)Retourne le plus petit parmi zéro ou plusieurs nombres donnés en paramètres.
Math.pow(x, y)Retourne x élevé à la puissance y.
Math.sqrt(x)Retourne la racine carrée de x.
Math.cbrt(x)Retourne la racine cubique de x.
Math.random()Retourne un nombre pseudo-aléatoire entre 0 et 1.
Math.log(x)Retourne le logarithme naturel (log de base e) de x.
Math.log10(x)Retourne le logarithme en base 10 de x.
Math.exp(x)Retourne e^x, où x est l'argument et e est le nombre d'Euler (environ 2,71828).
Math.sin(x)Retourne le sinus de x (x est en radians).
Math.cos(x)Retourne le cosinus de x (x est en radians).
Math.tan(x)Retourne la tangente de x (x est en radians).
Math.asin(x)Retourne l'arcsinus de x en radians.
Math.acos(x)Retourne l'arccosinus de x en radians.
Math.atan(x)Retourne l'arctangente de x en radians.
Math.atan2(y, x)Retourne l'arctangente du quotient de ses arguments (y/x).

Comprendre les bases : les fonctions Math essentielles de JavaScript

Math.round()

La fonction Math.round() arrondit un nombre à l'entier le plus proche. Si la partie fractionnaire est supérieure ou égale à 0,5, l'arrondi se fait vers le haut ; sinon, vers le bas.

Exemple :

javascript— editable

Piège — nombres négatifs et .5 : Math.round() arrondit toujours vers l'infini positif en cas d'égalité, pas « en s'éloignant de zéro ». Ainsi, Math.round(-2.5) vaut -2, et non -3. Si vous avez simplement besoin de tronquer la partie fractionnaire, utilisez Math.trunc() à la place.

javascript— editable

Math.ceil()

La fonction Math.ceil() arrondit un nombre vers le haut jusqu'à l'entier supérieur suivant, quelle que soit sa partie fractionnaire.

Exemple :

javascript— editable

Math.floor()

À l'inverse, Math.floor() arrondit un nombre vers le bas jusqu'à l'entier inférieur le plus proche, en supprimant toute partie fractionnaire.

Exemple :

javascript— editable

Math.sqrt()

La fonction Math.sqrt() retourne la racine carrée d'un nombre.

Exemple :

javascript— editable

Math.pow()

Math.pow() élève un nombre à une puissance donnée. En JavaScript moderne, vous pouvez utiliser l'opérateur d'exponentiation ** pour obtenir le même résultat — 4 ** 2 est équivalent à Math.pow(4, 2).

Exemple :

javascript— editable

Math.trunc() et Math.sign()

Math.trunc() supprime la partie fractionnaire d'un nombre en laissant la partie entière intacte — il n'arrondit jamais. Il est donc plus prévisible pour les nombres positifs comme négatifs, contrairement à Math.floor() (qui arrondit vers -Infinity).

Math.sign() indique le signe d'un nombre : 1 pour positif, -1 pour négatif, et 0 (ou -0) pour zéro.

Exemple :

javascript— editable

Gérer les entrées invalides : NaN

Les méthodes Math ne lèvent pas d'exception en cas de mauvaise entrée — elles retournent NaN (« Not a Number »). Par exemple, la racine carrée d'un nombre négatif, ou toute méthode recevant une valeur non numérique, produit NaN. Utilisez Number.isNaN() pour le détecter avant de faire confiance à un résultat.

Exemple :

javascript— editable

Opérations avancées : trigonométrie et au-delà

Math.sin(), Math.cos(), Math.tan()

Ces fonctions sont essentielles pour les calculs trigonométriques, correspondant respectivement au sinus, cosinus et tangente.

Exemple :

javascript— editable

Math.random()

Math.random() génère un nombre pseudo-aléatoire entre 0 (inclus) et 1 (exclus). Il est largement utilisé dans le développement de jeux et les simulations.

Exemple :

javascript— editable

Le besoin le plus courant — un entier aléatoire dans une plage. Seul, Math.random() fait rarement exactement ce que vous voulez ; vous avez généralement besoin d'un nombre entier entre min et max. Mettez à l'échelle la valeur 0–1, puis appliquez floor. Cette formule retourne un entier de min à max inclus :

javascript— editable

Notez que Math.random() n'est pas cryptographiquement sécurisé. Pour une génération aléatoire sensible à la sécurité (jetons, mots de passe), utilisez crypto.getRandomValues() à la place.

Math.max() et Math.min()

Ces fonctions retournent respectivement le plus grand et le plus petit nombre parmi un ensemble d'arguments.

Exemple :

javascript— editable

Applications concrètes : utiliser les fonctions Math

Les fonctions Math de JavaScript ne sont pas de simples concepts théoriques — elles ont des applications pratiques dans des domaines variés comme l'animation, les calculs financiers, les calculs scientifiques, et bien plus encore.

Étude de cas : animation avec la trigonométrie

Imaginons une animation web dans laquelle un objet se déplace sur un chemin circulaire. Ce mouvement peut être réalisé à l'aide des fonctions Math.sin() et Math.cos().

// Circular motion parameters
let radius = 20;
let angle = 0;

function animateCircle() {
    let x = radius * Math.cos(angle);
    let y = radius * Math.sin(angle);
    angle += 0.01;
    // Update the object's position here
}

Outil d'apprentissage interactif : créer un quiz mathématique

Grâce aux fonctions Math de JavaScript, on peut développer un quiz mathématique interactif qui soumet aux utilisateurs des problèmes arithmétiques aléatoires.

javascript— editable

Pour aller plus loin : les constantes Math et au-delà

En plus de ses nombreuses fonctions, l'objet Math de JavaScript fournit également plusieurs constantes mathématiques importantes. Ces constantes ne sont pas de simples valeurs fixes : elles constituent des éléments fondamentaux dans de nombreux calculs complexes, notamment en informatique scientifique et mathématique.

Math.PI

Math.PI représente le rapport entre la circonférence d'un cercle et son diamètre. Il est approximativement égal à 3,14159. Cette constante est indispensable dans les calculs impliquant des cercles et des sphères, comme le calcul de l'aire d'un cercle (Area = Math.PI * radius * radius) ou de la circonférence (Circumference = 2 * Math.PI * radius).

Exemple :

javascript— editable

Math.E

Math.E, connu sous le nom de nombre d'Euler, est approximativement égal à 2,718. Il est la base des logarithmes naturels et est très utilisé dans les calculs de croissance, les intérêts composés et l'analyse des nombres complexes. En JavaScript, Math.E est souvent utilisé avec la fonction Math.exp(), qui élève Math.E à la puissance d'un nombre donné.

Exemple :

javascript— editable

Math.LN2

Math.LN2 représente le logarithme naturel de 2, environ 0,693. Cette constante est particulièrement utile dans les algorithmes impliquant des calculs logarithmiques, comme le calcul du temps de doublement dans les modèles de croissance démographique ou dans certains calculs financiers.

Exemple :

javascript— editable

Autres constantes notables

  • Math.LN10 : Cette constante représente le logarithme naturel de 10, utile pour mettre à l'échelle des données logarithmiques.
  • Math.LOG2E : Le logarithme du nombre d'Euler en base 2. Il sert à convertir des logarithmes de base E en base 2.
  • Math.LOG10E : Le logarithme du nombre d'Euler en base 10, utilisé dans des contextes similaires à Math.LOG2E mais pour les logarithmes en base 10.
  • Math.SQRT1_2 : Représente la racine carrée de 1/2 et est souvent utilisé dans les calculs géométriques.
  • Math.SQRT2 : La racine carrée de 2, une constante qui apparaît fréquemment en algèbre, en géométrie et en ingénierie.

Applications pratiques des constantes Math

Comprendre et utiliser ces constantes peut considérablement améliorer les fonctionnalités de vos applications JavaScript. Par exemple, dans le développement de jeux, Math.PI est indispensable pour calculer des trajectoires et des rotations. Dans la technologie financière, Math.E et ses constantes logarithmiques associées sont essentiels pour calculer les intérêts composés et les plans d'amortissement.

Conclusion

L'objet Math vous offre l'arrondi, les puissances, les racines, l'aléatoire, la trigonométrie et un ensemble de constantes utiles — sans aucune importation. Les points essentiels à retenir : Math est statique (pas de new), Math.round() arrondit les égalités vers +Infinity, Math.trunc() est la méthode prévisible pour supprimer une partie fractionnaire, il faut mettre à l'échelle Math.random() pour obtenir un entier dans une plage, et une entrée invalide produit NaN plutôt qu'une erreur.

Sujets connexes

Pratique

Pratique
Lesquelles des affirmations suivantes concernant JavaScript Math sont correctes ?
Lesquelles des affirmations suivantes concernant JavaScript Math sont correctes ?
Was this page helpful?