--- title: Math.log() slug: Web/JavaScript/Reference/Global_Objects/Math/log translation_of: Web/JavaScript/Reference/Global_Objects/Math/log original_slug: Web/JavaScript/Referencia/Objetos_globales/Math/log ---
{{JSRef}}

La función Math.log() devuelve la base neutral de un número (base {{jsxref ("Math.E", "e")}})

x>0,Math.log(x)=ln(x)=the uniqueysuch thatey=x\forall x > 0, \mathtt{\operatorname{Math.log}(x)} = \ln(x) = \text{el unico} \; y \; \text{tal que} \; e^y = x

 

La función en JavaScrcrip Math.log() es equivalente a ln(x) en matematicas.

{{EmbedInteractiveExample("pages/js/math-log.html")}}

Sintaxis

Math.log(x)

Parametetros

x
Es un numero.

Retorna el valor

 

La base natural (base {{jsxref("Math.E", "e")}}) del número dado. Si el número es negativo, se devuelve {{jsxref("NaN")}} 

Descripcion

If the value of x is negative, the return value is always {{jsxref("NaN")}}.

Because log() is a static method of Math, you always use it as Math.log(), rather than as a method of a Math object you created (Math is not a constructor).

If you need the natural log of 2 or 10, use the constants {{jsxref("Math.LN2")}} or {{jsxref("Math.LN10")}} .  If you need a logarithm to base 2 or 10, use {{jsxref("Math.log2()")}} or {{jsxref("Math.log10()")}} .  If you need a logarithm to other bases, use Math.log(x) / Math.log(otherBase) as in the example below; you might want to precalculate 1 / Math.log(otherBase) .

Examples

Using Math.log()

Math.log(-1); // NaN, out of range
Math.log(0);  // -Infinity
Math.log(1);  // 0
Math.log(10); // 2.302585092994046

Using Math.log() with a different base

The following function returns the logarithm of y with base x (ie. logxy\log_x y):

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

If you run getBaseLog(10, 1000) it returns 2.9999999999999996 due to floating-point rounding, which is very close to the actual answer of 3.

Specifications

Specification Status Comment
{{SpecName('ES1')}} {{Spec2('ES1')}} Initial definition. Implemented in 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')}}  

Browser compatibility

{{Compat("javascript.builtins.Math.log")}}

See also