Math对象(数学对象)是一个内置对象,它拥有一些数学常数属性和数学函数方法。他不是构造函数(不需要用到new,可以直接使用)。Math 的所有属性与方法都是静态的。
Math的常用方法
Math.abs( 1 ) ==> 1 返回一个数的绝对值。
Math.floor( 1. 2 ) ==> 1 向下(往小)取整
Math.ceil( 1. 2 ) ==> 2 向上(往大)取整
Math.round( 1. 4 ) ==> 1 四舍五入
*Math.round( - 25.5 ) ==> - 25 * 在负数的情况下,四舍五入是.5的时候会把 . 5 舍去
Math.random() 取 0 - 1 之间的随机数,应用的场景一般是抽奖
Math.pow( 2 , 3 ) ==> 8 取幂;第一个参数是底数,第二个是几次方,( 2 , 3 )就表示2的3次方,也就是2*2*2=8
随机数公式
Math.random() * (max - min )+ min; 得到不包含最大值的随机数
Math.random() * (max - min + 1)+ min; 得到包含最大值的随机数
应用
随机生成10个10-100的随机数打印出来,先排序,再查重
var n=[ ] 先生成一个空的数组
for(i = 1 ; i < =10 ;i ++){ 循环数组,i从1开始,数组小于等于10
var num =Math.floor(Math.random() * (100 - 10 + 1))+ 10;套用随机数公式
Math.random() * (max - min + 1)+ min 最大的数是100,最小的10
n.push(num) 把得到的数加入数组
}
document.write(n);打印得到的数组
两位数的排序,用一个函数
n.sort(function(a,b){ sort排序
return a-b;
})
document.write('<br>'+n+'<br>');打印排序好的数组
查重
var arr=[ ];建一个新数组
for(i=0;i<=n.length;i++){ 循环数组,数组的长度小于原数组的长度
if (arr.indexOf(n[ i ]) == -1) { 如果arr[ i ] indexof返回的值等于-1,说明现在arr中没有这元素,就push添加到数组中,达到查重的效果;
通样的方法也可以使用includes,返回的值是ture或者是false进行判断
arr.push(n[ i ])
}
}
document.write(arr) 最后打印结果就可以啦~