如何在JavaScript中指定Math.log()的基础?

2022-08-30 01:10:07

我需要一个JavaScript的函数,但它需要以10为基数。我看不到任何列表,所以我假设这是不可能的。有没有数学向导知道这个问题的解决方案?log


答案 1

“基数变更”公式/标识

以 10 为底数的对数的数值可以用以下单位来计算。

Logarithm for base 10


由于在 JavaScript 中返回的自然对数(与 ln(x)相同),因此对于以 10 为底数,您可以除以 (与 ln(10) 相同):Math.log(x)xMath.log(10)

function log10(val) {
  return Math.log(val) / Math.LN10;
}

Math.LN10是 的内置预计算常量,因此此函数本质上与:Math.log(10)

function log10(val) {
  return Math.log(val) / Math.log(10);
}

答案 2

很简单,只需通过除以 log(10) 来更改基数即可。甚至还有一个常数可以帮助你

Math.log(num) / Math.LN10;

这与:

Math.log(num) / Math.log(10);