Функція Math.log()
повертає натуральний логарифм (тобто за основою e
) від числа, що являється:
Функція JavaScript Math.log()
еквівелентна ln(x) у математиці.
Джерело цих інтерактивних прикладів зберігається у репозиторії на GitHub. Якщо ви маєте бажання зробити свій внесок у проект інтерактивних прикладів - будь ласка, зклонуйте репозиторій https://github.com/mdn/interactive-examples та пришліть нам pull request.
Синтаксис
Math.log(x)
Аргументи
x
- Число.
Результат
Опис
Якщо значення аргументу x
від'ємне - функція завжди повертає NaN
.
У зв'язку з тим, що log()
- це статичний метод Math
, слід завжди викликати його як Math.log()
, аніж як метод створеного вами об'єкту Math
(оскільки Math
не являється конструктором).
Якщо вам потрібно отримати значення натурального логарифму від 2 чи 10, застосуйте вбудовані сталі Math.LN2
чи Math.LN10
. Якщо вам потрібно отримати значення логарифму за основою 2 чи 10 - використайте Math.log2()
або Math.log10()
. Якщо вам потрібен логарифм за іншою основою, використайте Math.log(x) / Math.log(іншаОснова), як у прикладі нижче; можливо вам також знадобиться попередньо обчислити 1 / Math.log(іншаОснова).
Приклади
Застосування Math.log()
Math.log(-1); // NaN, out of range
Math.log(0); // -Infinity
Math.log(1); // 0
Math.log(10); // 2.302585092994046
Застосування Math.log() з іншою основою
Наступна функція повертає логарифм від y
за основою x
(тобто, ):
function getBaseLog(x, y) {
return Math.log(y) / Math.log(x);
}
Щоправда, якщо ви виконаєте getBaseLog(10, 1000)
, вона поверне 2.9999999999999996
у зв'язку із округленням чисел із рухомою комою. Звісно, це з дуже великою точністю близько до дійсного результату в 3.
Специфікації
Специфікація | Статус | Примітка |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Первинне визначення. Реалізовано у 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 (ECMA-262) The definition of 'Math.log' in that specification. |
Living Standard |
Підтримка у браузерах
BCD tables only load in the browser
Таблиця сумісності на цій сторінці сформована автоматично із структурованих даних. Якщо ви маєте бажання зробити свій внесок до цих даних - будь-ласка, ось репозиторій https://github.com/mdn/browser-compat-data, надішліть нам свій pull request.