-1

基本上跟相反的Math.pow()

我想要一个可以用作对数的函数:

var mynum = findpower(36, 6); // 2, because 6 squared is 36

如何构建这样的功能?

4

1 回答 1

10

这是一个对数

Math.log(36) / Math.log(6) = 2

一般情况下

Math.log(number) / Math.log(base)

对数具有以下性质:如果 a = log(n = number, b = base)(通常表示为 log b (n))则 b a = n。在上面的代码中,我使用了对数属性: log y (x) = log c (x) / log c (y) 其中 c 是任何正数。

Math.log在上面的例子中是自然对数,即底数 = e 的对数(≈ 2.718281828…,参见 Math.E)。显然,如果我们有自然对数(通常表示为 ln(n) 或 log(n)),那么我们可以通过上面给出的等式得到任何其他底的对数:log y (x) = log(x) / log (y)

于 2012-12-22T08:25:24.753 回答