二维码

JavaScript Math 对象

JavaScript Math 对象

JavaScript Math 对象允许您在 数字。

1
Math.PI;


Math 对象

与其他对象不同,Math 对象没有构造函数。

Math 对象是静态的。

可以使用所有方法和属性,而无需先创建 Math 对象。


Math 属性(常量)

任何 Math 属性的语法都是 :Math.*property*

JavaScript 提供了 8 个数学常量,可以作为 Math 属性访问:

1
2
3
4
5
6
7
8
Math.E        // returns Euler's number  
Math.PI       // returns PI
Math.SQRT2    // returns the square root of 2
Math.SQRT1_2  // returns the square root of 1/2
Math.LN2      // returns the natural logarithm of 2
Math.LN10     // returns the natural logarithm of 10
Math.LOG2E    // returns base 2 logarithm of E
Math.LOG10E   // returns base 10 logarithm of E


数学方法

Math任何方法的语法是:Math.method(number)


数字到整数

有 4 种常用方法可以将数字四舍五入为整数:

Math.round(x) 返回四舍五入到其最接近的整数的 x
Math.ceil(x) 返回四舍五入到其最接近的整数的 x
Math.floor(x) 返回四舍五入到最接近的整数的 x
Math.trunc(x) 返回 x 的整数部分([ES6 中的新增]部分)

Math.round()

Math.round(x)返回最接近的整数:

1
Math.round(4.6);  

1
Math.round(4.5);  

1
Math.round(4.4);  


Math.ceil()

Math.ceil(x)返回四舍五入到其最接近整数的 x 的值:

1
2
3
4
5
Math.ceil(4.9);  
Math.ceil(4.7);
Math.ceil(4.4);
Math.ceil(4.2);
Math.ceil(-4.2);


Math.floor()

Math.floor(x)返回向下舍入到最接近的整数的 x 的值:

1
2
3
4
5
Math.floor(4.9);  
Math.floor(4.7);
Math.floor(4.4);
Math.floor(4.2);
Math.floor(-4.2);


Math.trunc()

Math.trunc(x)返回 X 的整数部分:

1
2
3
4
5
Math.trunc(4.9);  
Math.trunc(4.7);
Math.trunc(4.4);
Math.trunc(4.2);
Math.trunc(-4.2);


Math.sign()

Math.sign(x)如果 x 为负数、null 或正数,则返回:

1
2
3
Math.sign(-4);  
Math.sign(0);
Math.sign(4);

Math.trunc() 和 Math.sign() 被添加到 [JavaScript 2015 - ES6] 中。


Math.pow()

Math.pow(x, y)将 X 的值返回为 Y 的幂:

1
Math.pow(8, 2);


Math.sqrt()

Math.sqrt(x)返回 x 的平方根:

1
Math.sqrt(64);


Math.abs()

Math.abs(x)返回 x 的绝对(正)值:

1
Math.abs(-4.7);


Math.sin()

Math.sin(x)返回角度 x(以弧度表示)的正弦值(介于 -1 和 1 之间的值)。

如果要使用度数而不是弧度,则必须将度数转换为弧度:

以弧度为单位的角度 = 以度为单位的角度 x PI / 180。

1
Math.sin(90 * Math.PI / 180);     // returns 1 (the sine of 90 degrees)


Math.cos()

Math.cos(x)返回角度 x(以弧度为单位)的余弦值(介于 -1 和 1 之间的值)。

如果要使用度数而不是弧度,则必须将度数转换为弧度:

以弧度为单位的角度 = 以度为单位的角度 x PI / 180。

1
Math.cos(0 * Math.PI / 180);     // returns 1 (the cos of 0 degrees)


Math.min() 和 Math.max()

Math.min()Math.max() 可用于查找参数列表中的最小值或最大值:

1
Math.min(0, 150, 30, 20, -8, -200);

1
Math.max(0, 150, 30, 20, -8, -200);


Math.random()

Math.random()返回一个介于 0(含)和 1 之间的随机数 (独家):

1
Math.random();

您将在本教程的下一章中了解有关 Math.random() 的更多信息。


Math.log()方法

Math.log(x)返回 x 的自然对数。

自然对数返回达到一定增长水平所需的时间:

1
Math.log(1);

1
Math.log(2);

1
Math.log(3);

Math.EMath.log() 是孪生体。

:我们必须将Math.E乘以多少次才能得到 10?
1
Math.log(10);


Math.log2()方法

Math.log2(x)返回 x 的以 2 为底的对数。

:我们必须将 2 乘以多少次才能得到 8?
1
Math.log2(8);


Math.log10()方法

Math.log10(x)返回 x 的以 10 为底的对数。

:我们必须乘以 10 多少次才能得到 1000?
1
Math.log10(1000);


JavaScript 数学方法

方法 概述
abs(x) 返回 x 的绝对值
acos(x) 返回 x 的反余弦(以弧度为单位)
acosh(x) 返回 x 的双曲反余弦
asin(x) 返回 x 的反正弦,以弧度为单位
asinh(x) 返回 x 的双曲反正弦
atan(x) 以 -PI/2 和 PI/2 弧度之间的数值形式返回 x 的反正切值
atan2(y, x) 返回其参数商的反正切值
atanh(x) 返回 x 的双曲反正切值
cbrt(x) 返回 x 的立方根
ceil(x) 返回 x,向上舍入到最接近的整数
cos(x) 返回 x 的余弦(x 以弧度为单位)
cosh(x) 返回 x 的双曲余弦
exp(x) 返回 Ex 的值
floor(x) 返回 x,向下舍入到最接近的整数
log(x) 返回 x 的自然对数(以 E 为底)
max(x, y, z, …, n) 返回具有最高值的数字
min(x, y, z, …, n) 返回具有最小值的数字
pow(x, y) 返回 x 的 y 次方值
random() 返回 0 到 1 之间的随机数
round(x) 将 x 四舍五入到最接近的整数
sign(x) 返回 x 是否为负、空或正 (-1, 0, 1)
sin(x) 返回 x 的正弦值(x 的单位是弧度)
sinh(x) 返回 x 的双曲正弦值
sqrt(x) 返回 x 的平方根
tan(x) 返回角度的正切值
tanh(x) 返回数字的双曲正切
trunc(x) 返回数字 (x) 的整数部分