在所有代码执行前,作用域中就已经存在两个内置对象:Global(全局)和Math。
在大多数ES实现中都不能直接访问Global对象。不过,WEB浏览器实现了承担该角色的window对象。
全局变量和函数都是Global对象的属性。
Math对象提供了很多属性和方法,用于辅助完成复杂的数学计算任务。
1 Math.random()方法 功能: 返回0-1之间的随机数
例子:
for(var i=0;i<1;i++){
console.log(Math.random());
}
2 Math.ceil(x)方法 功能: 对数字x向上取整
注意: 如果x是正数 向上取 如果是负数 可以直接理解为不要小数的部分(也是向上取整)
例子:
// 如果是正数
console.log(Math.ceil(2.4)); // 3
console.log(Math.ceil(2.8)); // 3
// 如果是负数
console.log(Math.ceil(-1.4)); // -1
console.log(Math.ceil(-1.8)); // -1
3 Math.floor()方法 功能: 对数字x向下取整
例子:
console.log(Math.floor(2.4)); // 2
console.log(Math.floor(2.8)); // 2
// 如果是负数
console.log(Math.floor(-1.4)); // -2
console.log(Math.floor(-1.8)); // -2
4 Math.round()方法 功能: 对数字x四舍五入取整(注意最后还是一个整数)
console.log(Math.round(2.4)); // 2
console.log(Math.round(2.8)); // 3
// 如果是负数
console.log(Math.round(-1.4)); // -1
console.log(Math.round(-1.8)); // -2
5.Math.abs(),绝对值,功能:返回任意数值的绝对值
例子:
console.log(Math.abs(-1));//1
console.log(Math.abs('1px'));//NaN
console.log(Math.abs(1,2,3));//1
6.Math.min() 和 Math.max() , 功能:这两个方法用于确定一组数值中的最小值和最大值。
例子:
var min = Math.min(1,2,3,4,5); //1
var min = Math.max(1,2,3,4,5); //5
//可以隐式类型转换
var min = Math.min(1,2,3,4,"5"); //1
var min = Math.max(1,2,3,4,"5"); //5
//如果参数有一个(或者隐式类型转换后)是非数值型,则返回NaN
var min = Math.min(1,2,3,4,"5aa"); //NaN
var min = Math.max(1,2,3,4,"5bb"); //NaN
如果要想找到数组的最大最小值,用apply()方法
例子:
var arr = [1,2,3,4,5];
var min = Math.min.apply(Math,arr);//
其他方法
方法 说明
Math.abs(number) 返回number的绝对值
Math.exp(number) 返回Math.E的number次幂
Math.log(number) 返回number的自然对数
Math.pow(number,power) 返回number的power次幂
Math.sqrt(number) 返回number的平方根
Math.acos(x) 返回x的反余弦值
Math.asin(x) 返回x的反正弦值
Math.atan(x) 返回x的反正切值
Math.atan2(y,x) 返回y/x的反正切值
Math.cos(x) 返回x的余弦值
Math.sin(x) 返回x的正弦值
Math.tan(x) 返回x的正切值