9- L’objet global JavaScript Math, propriétés et méthodes
A la différence des autres objets globaux, l’objet natif Math n’est pas un constructeur. En conséquence, toutes les propriétés et méthodes de cet objet sont statiques et vont donc devoir être utilisées directement avec cet objet.
Comme vous pouvez vous en douter, l’objet Math va être utilisé lorsqu’on aura besoin d’effectuer des opérations mathématiques et notamment de trigonométrie (calculs de cosinus, sinus, tangentes, etc.).

Les propriétés de l’objet Math
Les propriétés de l’objet Math stockent des constantes mathématiques utiles.
- Math.E a pour valeur le nombre d’Euler (base des logarithmes naturels ou encore exponentielle de 1), soit environ 2,718 ;
- Math.LN2 a pour valeur le logarithme naturel de 2, soit environ 0,693 ;
- Math.LN10 a pour valeur le logarithme naturel de 10, soit environ 2,302 ;
- Math.LOG2E a pour valeur le logarithme de e en base 2, soit environ 1,442;
- Math.LOG10E a pour valeur le logarithme de e en base 10, soit environ 0,434 ;
- Math.PI a pour valeur pi, soit environ 3,14159 ;
- Math.SQRT1_2 a pour valeur la racine carrée de ½, soit environ 0,707 ;
- Math.SQRT2 a pour valeur la racine carrée de 2, soit environ 1,414.
Les méthodes de l’objet Math
L’objet Math
possède des méthodes qui permettent d’arrondir des nombres, de générer des nombres aléatoires ou encore de calculer le cosinus, sinus, tangente, logarithme ou l’exponentielle d’un nombre.
· Les méthodes floor(), ceil(), round() et trunc()
Les méthodes floor()
, ceil()
, round()
et trunc()
permettent toutes les quatre d’arrondir ou de tronquer un nombre décimal afin de le transformer en entier.
La méthode floor()
va arrondir la valeur passée en argument à l’entier immédiatement inférieur (ou égal) à cette valeur.
La méthode ceil(), au contraire, va arrondir la valeur passée en argument à l’entier immédiatement supérieur (ou égal) à cette valeur.
La méthode round() va elle arrondi la valeur passée en argument à l’entier le plus proche. Ainsi, si la partie décimale de la valeur passée est supérieure à 0,5, la valeur sera arrondie à l’entier supérieur. Dans le cas contraire, la valeur sera arrondie à l’entier inférieur. Dans le cas où la partie décimale vaut exactement 0,5, la valeur sera arrondie à l’entier supérieur (dans la direction de l’infini positif).
Finalement, la méthode trunc() va tout simplement ignorer la partie décimale d’un nombre et ne retourner que sa partie entière.


· La méthode random()
La méthode random()
permet de générer un nombre décimal compris entre 0 (inclus) et 1 (exclu) de manière pseudo-aléatoire.
On va ensuite pouvoir multiplier son résultat par un autre nombre afin d’obtenir un nombre pseudo-aléatoire compris dans l’intervalle de notre choix.

· Les méthodes min() et max()
La méthode min() renvoie le plus petit nombre d’une série de nombres passés en arguments. La méthode max(), au contraire, va renvoyer le plus grand nombre d’une série de nombres passés en arguments.
Dans les deux cas, si l’une des valeurs fournies en argument n’est pas un nombre et ne peut pas être convertie en nombre, alors ces méthodes renverront la valeur NaN.

· La méthode abs()
La méthode abs()
renvoie la valeur absolue d’un nombre, c’est-à-dire le nombre en question sans signe.
Si la valeur fournie en argument n’est pas un nombre et ne peut pas être convertie en nombre, alors elle renverra NaN
.

· Les méthodes cos(), sin(), tan(), acos(), asin() et atan()
Les méthodes cos(), sin(), tan(), acos(), asin() et atan() retournent respectivement le cosinus, le sinus, la tangente, l’arc cosinus, l’arc sinus et l’arc tangente d’une valeur passée en argument.
Les valeurs passées et retournées sont exprimées en radians. Pour convertir une valeur en radians en une valeur en degrés, il suffit de multiplier la valeur en radians par 180 et de diviser par pi (180° = pi radian, 360° = 2pi radian).
