对数函数
对数函数(Logarithmic Function)是以幂(真数)为自变量,指数为因变量,底数为常量的函数。对数函数是6类基本初等函数之一。其中对数的定义: 如果 ax = N(a>0,且a≠1),那么数 x 叫做以 a 为底 N 的对数,记作 x=logaN,读作以 a 为底 N 的对数,其中 a 叫做对数的底数,N 叫做真数。
对数对解幂是未知的方程是有用的。它们有简单的导数,所以它们经常用在解积分中。
编程中计算时间复杂度,比如快排算法就需要用到对数函数。
📐 数学公式
y =(基数 2 的幂)等于 x 该等式改写为 y = log2x。 这被读作: ”y 等于 x 的对数,以 2 为底” 或 “y 等于 x 的对数,以 2 为底”。 如: 5² = 25 => log5(25) = 2
📌 JavaScript
参考代码:index.js
/* Math.E 返回算术常量 e,即自然对数的底数(约等于2.718) Math.log(x) 返回数的自然对数(底为e) Math.log2() 函数返回一个数字以 2 为底的对数。 Math.log10() 函数返回一个数字以 10 为底的对数。 Math.log1p() 函数返回一个数字加 1 后的自然对数 (底为 E), 既log(x+1). */ console.log(Math.log(2.718)); /* 输出 0.999896315728952 接近 1 */ console.log(Math.log(1)); /* 输出 0 */ console.log(Math.log(Math.E)); /* 输出 1 */ console.log(Math.log("10")); /* 输出 2.302585092994046 */ console.log(Math.log(0)); /* 输出 -Infinity */ console.log(Math.log(-1)); /* 输出 NaN */ /** * 返回以 x 为底 y 的对数,即 logx(y) * @param {Number} x - 底数 * @param {Number} y - 目标值 * @returns {Number} 对数的值 */ function calculateLogarithm(x, y) { return Math.log(y) / Math.log(x); } /** * 计算对数图像上的某个点的对应坐标 * @param {Number} base - 底数 * @param {Number} x - 点 P 的 x 坐标 * @returns {Objext} 返回在对数图像上点的完整坐标 */ function calculatePoint(base, x) { const y = calculateLogarithm(base, x); const point = { x: x, y: y }; return point; } export { calculateLogarithm, calculatePoint };
测试:test.js
import { calculateLogarithm, calculatePoint } from './index'; console.log(calculateLogarithm(10, 100)); /* 输出 2 */ console.log(calculatePoint(2, 50)) /* 输出: { "x": 50, "y": 5.643856189774724 } */