Math 对象
Math
对象是 JavaScript 中内置的一个全局对象,它主要提供一些基本的、常用的数学函数和常数。
与其它全局对象不同的是,Math
对象不是一个构造函数,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.exp(num) | 返回 自然对数的底数( 表示参数, 是欧拉常数) | |
Math.pow(base, exponent) | 获取基数 (base) 的指数次幂 (exponent) | |
Math.log(num) | 获取一个数值的自然对数 | |
Math.sqrt(num) | 获取一个数值的平方根 | |
三角函数
函数 | 说明 |
---|
Math.sin(num) | 返回一个数值的正弦值。 |
Math.cos(num) | 返回一个数值的余弦值。 |
Math.tan(num) | 返回一个数值的正切值。 |
Math.asin(num) | 返回一个数值的反正弦值。 |
Math.acos(num) | 返回一个数值的反余弦值。 |
Math.atan(num) | 返回一个数值的反正切值。 |
Math.atan2(num1, num2) | 返回一个数值的比值的反正切值。 |