JavaScript中提供了math对象,math对象包含一些常用的属相和方法。Math对象与Array对象、String对象、Data对象不同,没有构造函数,因此不能创建Math对象。可直接通过Math对象 . 属性名或者Math对象 . 方法名调用。
属性 说明
Math.E 自然对数的底数,即常量e的值 2.718281828459045
Math.LN10 10的自然对数 2.302585092994046
Math.LN2 2的自然对数 0.6931471805599453
Math.LOG2E 以2为底e的对数 1.4426950408889634
Math.LOG10E 以10为底e的对数 0.4342944819032518
Math.PI π的值 3.141592653589793
Math.SQRT1_2 1/2的平方根 0.7071067811865476
Math.SQRT2 2的平方根 1.4142135623730951
$:Math.min() 和 Math.max()
var add =Math.min(1,2,3,4,5) //找最小值 //1
console.log(add);
var add =Math.max(1,2,3,4,5) //找最大值 //5
console.log(add);
var add =Math.min(1,2,3,4,'5'); //1 //可以隐式类型转换
console.log(add);
var add =Math.max(1,2,3,4,'5aa'); //参数有一个是非数值型,返回NaN;
console.log(add);
var arr =[1,2,3,4,5];
var arr =Math.min.apply(Math.arr);
console.log(arr); //如果要想找到数组的最大最小值,用apply()方法
$:舍入方法
var arr =Math.ceil(3.1415926);
console.log(arr); //4 (向上取整)
var arr =Math.floor(5.50);
console.log(arr); //5 (向下取整)
var arr =Math.round(3.39);
console.log(arr); //3 (四舍五入)
注意:Math.round(4.4999999999999999999999999999);
$:Math.random() 方法
var arr =Math.random(8);
console.log(arr); //返回大于等于0小于1的一个随机数
封装一个方法:随机生成n到m的随机数。
公式:
function random(n,m){
var num = m-n+1;
return Math.floor(Math.random()*num + n);
}
加定时器:
代码如下:
setInterval(function(){
function arr(n,m){
var num=m-n+1;
return Math.floor(Math.random()*num+1);
}
console.log(arr(1,20));
},1000);
$:其他方法
Math.abs(number) 返回number的绝对值
Math.exp(number) 返回Math.E的number次幂
Math.pow(number,power) 返回number的power次幂
Math.sqrt(number) 返回number的平方根
Math.log(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的正切值