Math 对象
Math 对象是 JavaScript 中内置的一个全局对象,它主要提供一些基本的、常用的数学函数和常数。
与其它全局对象不同的是,Math 对象不是一个构造函数,Math 对象的所有属性和方法都是静态的。
new Math();
属性
Math 对象的属性亦即数学上的常量。一共有 8 个常量,主要包括 对数、 圆周率 和 平方根 三类
对数
| 属性 |
说明 |
Math.E |
自然对数的底数,即数学常量 e 的值(约等于 2.71828) |
Math.LN2 |
2 的自然对数(约等于 0.693) |
Math.LN10 |
10 的自然对数(约等于 2.303) |
Math.LOG2E |
以 2 为底 e 的对数(约等于 1.443) |
Math.LOG10E |
以 10 为底 e 的对数(约等于 0.434) |
圆周率
| 属性 |
说明 |
Math.PI |
圆周率 π(约等于 3.14159) |
平方根
| 属性 |
说明 |
Math.SQRT2 |
2 的平方根(约等于 1.414) |
Math.SQRT1_2 |
0.5 的平方根,即 2 的平方根的倒数(约等于 0.707) |
方法
Math 对象一共有 18 个静态方法,主要包括 最值、舍入、随机数、绝对值、三角函数 及 乘方开方 6 类。
这些函数都涉及到 Number() 隐式类型转换,若超出范围,将返回 NaN。
最值
| 函数 |
说明 |
Math.max([value1 [, value2, ...]]) |
返回一组数中的最大值。如果没有参数则返回 -Infinity。如果任意一个参数是 NaN 或不可转换为数字,则返回 NaN。 |
Math.min([value1 [, value2, ...]]) |
返回一组数中的最小值。如果没有参数则返回 Infinity。如果任意一个参数是 NaN 或不可转换为数字,则返回 NaN。 |
舍入
| 函数 |
说明 |
Math.ceil() |
返回大于或等于一个给定数字的最小整数。(执行向上取整运算) |
Math.floor() |
返回小于或等于一个给定数字的最大整数。(执行向下取整运算) |
Math.round() |
返回一个数字四舍五入后最接近的整数。 |
随机数
| 函数 |
说明 |
Math.random() |
返回一个浮点数,伪随机数范围[0, 1),也就是说,从 0(包括 0)往上,但是不包括 1(排除 1),然后可以缩放到所需的范围。实现将初始种子选择到随机数生成算法,它不能被用户选择或重置。 |
绝对值
| 函数 |
说明 |
Math.abs() |
返回参数数值的绝对值 |
乘方开方
| 函数 |
说明 |
示例 |
Math.exp(num) |
返回 $e^x$ 自然对数的底数($x$ 表示参数,$e$ 是欧拉常数) |
$e^x$ |
Math.pow(base, exponent) |
获取基数 (base) 的指数次幂 (exponent) |
$x^2$ |
Math.log(num) |
获取一个数值的自然对数 |
$\log(x)$ |
Math.sqrt(num) |
获取一个数值的平方根 |
$\sqrt[2]{x}$ |
三角函数
| 函数 |
说明 |
Math.sin(num) |
返回一个数值的正弦值。 |
Math.cos(num) |
返回一个数值的余弦值。 |
Math.tan(num) |
返回一个数值的正切值。 |
Math.asin(num) |
返回一个数值的反正弦值。 |
Math.acos(num) |
返回一个数值的反余弦值。 |
Math.atan(num) |
返回一个数值的反正切值。 |
Math.atan2(num1, num2) |
返回一个数值的比值的反正切值。 |