Math.log()

La fonction Math.log() renvoie le logarithme naturel (aussi appelé logarithme népérien) d'un nombre, défini par :

x > 0 , Math.log ( x ) = ln ( x ) = le seul y tel que e y = x \forall x > 0, \mathtt{\operatorname{Math.log}(x)} = \ln(x) = \text{the unique} ; y ; \text{such that} ; e^y = x

Exemple interactif

Syntaxe

js
Math.log(x);

Paramètres

x

Un nombre.

Valeur de retour

Le logarithme naturelle de la valeur passée en argument. Si cette valeur est négative, c'est NaN qui est renvoyé.

Description

Si la valeur de l'argument est négative, la valeur renvoyée sera NaN. Si la valeur de l'argument est 0, la valeur de retour sera -Infinity.

log() est une méthode statique de Math, elle doit toujours être utilisée avec la syntaxe Math.log(), elle ne doit pas être utilisée à partir d'un autre objet qui aurait été créé (Math n'est pas un constructeur). Si on veut utiliser les constantes données par les logarithmes naturels de 2 ou 10, on pourra utiliser les constantes Math.LN2 ou Math.LN10. De même pour les logarithmes en base 2 ou en base 10, on pourra utiliser Math.log2() or Math.log10().

Exemples

Utiliser Math.log()

js
Math.log(-1); // NaN, valeur en dehors de l'intervalle de définition
Math.log(0); // -Infinity
Math.log(1); // 0
Math.log(10); // 2.302585092994046

Utiliser Math.log pour construire un logarithme sur une autre base

La fonction suivante renvoie le logarithme de y en base x (c'est-à-dire logx y):

js
function getBaseLog(x, y) {
  return Math.log(y) / Math.log(x);
}

Si on exécute getBaseLog(10, 1000), on obtiendra 2.9999999999999996 en raison de l'arrondi du à la représentation en nombre flottant (le résultat exact étant 3).

Spécifications

Specification
ECMAScript Language Specification
# sec-math.log

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi