ES6 - 数学



Math 对象提供数学常量和函数的属性和方法。与其他全局对象不同,Math 不是构造函数。Math 的所有属性和方法都是静态的,可以直接使用 Math 作为对象调用,无需创建它。

Math 属性

以下是所有 Math 属性及其说明的列表。

序号 属性及说明
1 E

欧拉常数和自然对数的底数,约等于 2.718

2 LN2

2 的自然对数,约等于 0.693

3 LN10

10 的自然对数,约等于 2.302

4 LOG2E

E 的以 2 为底的对数,约等于 1.442

5 LOG10E

E 的以 10 为底的对数,约等于 0.434

6 PI

圆周率(圆周长与直径之比),约等于 3.14159

7 SQRT1_2

1/2 的平方根;等效于 1 除以 2 的平方根,约等于 0.707

8 SQRT2

2 的平方根,约等于 1.414

指数函数

基本的指数函数是 Math.pow(),并且有用于平方根、立方根和 e 的幂的便捷函数,如下表所示。

序号 函数及说明
1 Math.pow(x, y)

返回 xy 次幂

2 Math.sqrt(x)

返回数字 x 的平方根

3 Math.cbrt(x)

此方法返回数字 x 的立方根

4 Math.exp(x)

等效于 Math.pow(Math.E, x)

5 Math.expm1(x)

等效于 Math.exp(x) – 1

6 Math.hypot(x1, x2,...)

返回参数之和的平方根

对数函数

基本的自然对数函数是 Math.log()。在 JavaScript 中,“log” 表示“自然对数”。ES6 引入了 Math.log10 以方便使用。

序号 函数及说明
1 Math.log(x)

x 的自然对数

2 Math.log10(x)

x 的以 10 为底的对数

3 Math.log2(x)

x 的以 2 为底的对数

4 Math.log1p(x)

1 + x 的自然对数

其他代数函数

以下是其他代数函数及其说明的列表。

序号 函数及说明
1 Math.abs(x)

x 的绝对值

2 Math.sign(x)

x 的符号:如果 x 为负数,则为 -1;如果 x 为正数,则为 1;如果 x 为 0,则为 0

3 Math.ceil(x)

x 的上界:大于或等于 x 的最小整数

4 Math.floor(x)

x 的下界:小于或等于 x 的最大整数

5 Math.trunc(x)

x 的整数部分(所有小数位都被移除)

6 Math.round(x)

x 四舍五入到最接近的整数

7 Math.min(x1, x2,...)

返回最小参数

8 Math.max(x1, x2,...)

返回最小参数

三角函数

Math 库中的所有三角函数都使用弧度,而不是角度。

序号 函数及说明
1 Math.sin(x)

x 弧度的正弦

2 Math.cos(x)

x 弧度的余弦

3 Math.tan(x)

x 弧度的正切

4 Math.asin(x)

x 的反正弦 (arcsin)(结果以弧度表示)

5 Math.acos(x)

x 的反余弦 (arccos)(结果以弧度表示)

6 Math.atan(x)

x 的反正切 (arctan)(结果以弧度表示)

7 Math.atan2(y, x0)

从 x 轴到点 (x, y) 的逆时针角(以弧度表示)

Math.random()

Math.random() 函数返回一个介于 0(包含)和 1(不包含)之间的伪随机数。

示例:伪随机数生成 (PRNG)

var value1 = Math.random();  
console.log("First Test Value : " + value1 ); 

var value2 = Math.random();  
console.log("Second Test Value : " + value2 ); 

var value3 = Math.random();  
console.log("Third Test Value : " + value3 ); 

var value4 = Math.random(); 
console.log("Fourth Test Value : " + value4 );

输出

First Test Value : 0.5782922627404332 
Second Test Value : 0.5624510529451072 
Third Test Value : 0.9336334094405174 
Fourth Test Value : 0.4002739654388279
广告