Math对象不同于上述的对象,它可以说是一个公共数学类,里面有很多数学方法,用于各种数学运算
但是Math对象不需要构造,对于其中的方法直接使用即可
1、常量(即属性)
E 返回算术常量 e,即自然对数的底数(约等于2.718)
E
返回算术常量 e,即自然对数的底数(约等于2.718)
LN2
返回 2 的自然对数(约等于0.693)
LN10
返回 10 的自然对数(约等于2.302)
LOG2E
返回以 2 为底的 e 的对数(约等于 1.414)
LOG10E
返回以 10 为底的 e 的对数(约等于0.434)
PI
返回圆周率(约等于3.14159)
SQRT1_2
返回返回 2 的平方根的倒数(约等于 0.707)
SQRT2
返回 2 的平方根(约等于 1.414)
下面是它们的值:
复制代码 代码如下:
document.write("Math.E = "+Math.E+"<br>");
document.write("Math.LN2 = "+Math.LN2+"<br>");
document.write("Math.LN10 = "+Math.LN10+"<br>");
document.write("Math.LOG2E = "+Math.LOG2E+"<br>");
document.write("Math.LOG10E = "+Math.LOG10E+"<br>");
document.write("Math.PI = "+Math.PI+"<br>");
document.write("Math.SQRT1_2 = "+Math.SQRT1_2+"<br>");
document.write("Math.SQRT2 = "+Math.SQRT2+"<br>");
输出结果:
Math.E = 2.718281828459045
Math.LN2 = 0.6931471805599453
Math.LN10 = 2.302585092994046
Math.LOG2E = 1.4426950408889634
Math.LOG10E = 0.4342944819032518
Math.PI = 3.141592653589793
Math.SQRT1_2 = 0.7071067811865476
Math.SQRT2 = 1.4142135623730951
2、abs() 方法可返回数的绝对值
Math.abs(x);x必须为一个数值,此数可以是整数,小数都可以
document.write(Math.abs(-2.77));//输出2.77
3、acos(x) 返回数的反余弦值。
Math.acos(x);x必须是 -1.0 ~ 1.0 之间的数
如果x不在上述范围,则返回NaN
4、asin() 方法可返回一个数的反正弦值。
Math.asin(x);x必须是一个数值,该值介于 -1.0 ~ 1.0 之间。
如果参数 x 超过了 -1.0 ~ 1.0 的范围,那么浏览器将返回 NaN。
5、atan() 方法可返回数字的反正切值。
Math.atan(x);x 必需。必须是一个数值。
返回的值是 -PI/2 到 PI/2 之间的弧度值。
6、atan2() 方法可返回从 x 轴到点 (x,y) 之间的角度。
Math.atan2(y,x)
-PI 到 PI 之间的值,是从 X 轴正向逆时针旋转到点 (x,y) 时经过的角度。
7、ceil() 方法可对一个数进行上舍入。
什么是上舍入?即大于等于 x,并且与它最接近的整数。
Math.ceil(x);x 必需。必须是一个数值。
复制代码 代码如下:
document.write(Math.ceil(0.60) + "<br />")
document.write(Math.ceil(0.40) + "<br />")
document.write(Math.ceil(5) + "<br />")
document.write(Math.ceil(5.1) + "<br />")
document.write(Math.ceil(-5.1) + "<br />")
document.write(Math.ceil(-5.9))
输出为:
1
1
5
6
-5
-5
对于负数,你懂的
8、cos() 方法可返回一个数字的余弦值。
Math.cos(x);x 必需。必须是一个数值。 返回的是 -1.0 到 1.0 之间的数。、
x其实要求是输入一个弧度值,例如--->
π代表的是180°等,π即Math.PI
document.write(Math.cos(Math.PI));
输出为-1
但是假如:
复制代码 代码如下:
document.write(Math.cos(Math.PI/2));
输出为:6.123233995736766e-17
而:
复制代码 代码如下:
document.write(Math.cos(Math.PI/3));
输出为:0.5000000000000001
为什么会出现这些怪异的数字呢?
其实大家都知道document.write(Math.cos(Math.PI/2));应该输出0,而在Javascript中可能没有求的0,所以就用了一个非常非常小的数代替
类似的document.write(Math.cos(Math.PI/3));应该是0.5才对,但是却在最后面多了一位
这些是小问题,没啥好说的,本身寄存器就不可能表示所有数的,因此在计算过程中出现差错也很正常
9、exp() 方法可返回 e 的 x 次幂的值。