--- title: Math.log() slug: Web/JavaScript/Reference/Objets_globaux/Math/log tags: - JavaScript - Math - Méthode - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Math/log ---
La fonction Math.log()
renvoie le logarithme naturel (aussi appelé logarithme népérien) d'un nombre, défini par :
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
Math.log(x)
x
Le logarithme naturelle de la valeur passée en argument. Si cette valeur est négative, c'est {{jsxref("NaN")}} qui est renvoyé.
Si la valeur de l'argument est négative, la valeur renvoyée sera {{jsxref("NaN")}}. Si la valeur de l'argument est 0
, la valeur de retour sera {{jsxref("Number.NEGATIVE_INFINITY", "-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 {{jsxref("Math.LN2")}} ou {{jsxref("Math.LN10")}}. De même pour les logarithmes en base 2 ou en base 10, on pourra utiliser {{jsxref("Math.log2()")}} or {{jsxref("Math.log10()")}}.
Math.log()
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
Math.log
pour construire un logarithme sur une autre baseLa fonction suivante renvoie le logarithme de y
en base x
(c'est-à-dire logx y):
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écification | État | Commentaires |
---|---|---|
{{SpecName('ES1')}} | {{Spec2('ES1')}} | Définition initiale. Implémentée avec JavaScript 1.0. |
{{SpecName('ES5.1', '#sec-15.8.2.10', 'Math.log')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-math.log', 'Math.log')}} | {{Spec2('ES6')}} | |
{{SpecName('ESDraft', '#sec-math.log', 'Math.log')}} | {{Spec2('ESDraft')}} |
Le tableau de compatibilité de cette page a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à envoyer une pull request sur https://github.com/mdn/browser-compat-data.
{{Compat("javascript.builtins.Math.log")}}