Relawan kami belum menerjemahkan artikel ini ke bahasa Bahasa Indonesia. Bergabunglah dan bantu kami menyelesaikannya!
Anda juga dapat membaca artikel ini dalam English (US).
The Math.log()
function returns the natural logarithm (base e
) of a number, that is
The JavaScript Math.log()
function is equivalent to ln(x) in mathematics.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
Math.log(x)
Parameters
x
- A number.
Return value
The natural logarithm (base e
) of the given number. If the number is negative, NaN
is returned.
Description
If the value of x
is negative, the return value is always 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 Math.LN2
or Math.LN10
. If you need a logarithm to base 2 or 10, use Math.log2()
or 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. ):
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 |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.0. |
ECMAScript 5.1 (ECMA-262) The definition of 'Math.log' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Math.log' in that specification. |
Standard | |
ECMAScript Latest Draft (ECMA-262) The definition of 'Math.log' in that specification. |
Draft |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Basic support | Chrome Full support Yes | Edge Full support Yes | Firefox Full support 1 | IE Full support Yes | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Edge Mobile Full support Yes | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes | nodejs Full support Yes |
Legend
- Full support
- Full support