Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数;
Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数;
Math.round()执行标准舍入,即它总是将数值四舍五入为最接近的整数。
alert(Math.ceil(25.9)); //26
alert(Math.ceil(25.5)); //26
alert(Math.ceil(25.1)); //26
alert(Math.round(25.9)); //26
alert(Math.round(25.5)); //26
alert(Math.round(25.1)); //25
alert(Math.floor(25.9)); //25
alert(Math.floor(25.5)); //25
alert(Math.floor(25.1)); //25
ECMAScript为保存数学公式和信息提供了公共位置,即Math对象。
Math对象提供的计算功能比我们自己直接在js中编写的计算功能快得多。
1.Math对象的属性
Math.E // 自然对数的底数,即常量e的值
Math.LN10 //10的自然对数
Math.LN2 //2的自然对数
Math.LOG2E //以2为底e的对数
Math.LOG10E // 以10为底的e的对数
Math.PI //π的值
Math.SQRT1_2 //1/2的平方根(即2的平凡根的倒数)
Math.SQRT2 // 2的平方根
2.min()和max()方法
这两个方法用于确定一组数组中的最小值和最大值。这两个方法都可以接收任意多个数值参数。
var max = Max.max(3,54,32,16);
alert(max); //54
这两个方法经常用于避免多余的循环和if语句中确定一组数的最大值。
要找到数组中的最大或最小值,可以像下面这样使用apply()方法。
```javascript
var values = [1,2,3,5,7,9];
var max = Math.max.apply(Math,values);
这个技巧的关键是把Math对象作为apply()的第一个参数,从而正确的设置this值。然后,可以将任何数组作为第二个参数。
3.舍入方法
Math.ceil( ) //向上舍入
Math.floor( ) //向下舍入
Math.round( ) //四舍五入
4.random()方法
Math.random()方法返回大于等于0小于1的一个随机数。对于某些站点来说,这个方法非常实用,因为可以利用它来随机显示一些名人名言和新闻事件。套用下面的公式。就可以从某个整数范围内随机选择一个值。
值 = Math.floor(Math.random( ) * 可能值的总数 + 第一个可能的值)
公式中用到了Math.floor()方法,这是因为Math.random()总返回一个小数值
公式中用到了Math.floor()方法,这是因为Math.random()总返回一个小数值。而用这个小数值乘以一个整数,然后再加上一个整数,最终结果仍然还是一个小数。例如:
var num = Math.floor(Math.random() * 10 + 1);//获取1到10之间的随机数
如果想要选择一个介于2到10之间的值,如下:
var num = Math.floor(Math.random( ) * 9 + 2); //思考,无限接近于0时是2,无限接近于1时是11,但由于永远小于1,因此Math.floor的最大值为10。
从2数到10要数9个数,因此可能值的总数就是9,而第一个可能的值就是2。
多数情况下,其实都可以通过一个函数来计算可能值的总数和第一个可能的值。
function selectFrom(lowerValue,upperValue) {
var choices = upperValue - lowerValue+ 1;
return Math.floor(Math.random() * choices + lowerValue);
}
var num = selectFrom(2,10);
alert(num); //介于2和10之间(包括2和10)的一个数值
函数selectFrom()
函数selectFrom()接受两个参数:应该返回的是最大值和最小值。而用最大值减最小值再加上1得到了可能值的总和,然后它又把这些数值套用了前面的公式中。利用这个函数,可以方便地从数组中随机取出一项。例如:
var colors = ["red","green","blue","yellow","purple"];
var color = colors[selectFrom(0,colors.length-1)];
alert(color); //任何一个颜色
5.其他方法
Math.abs(num) //返回num的绝对值
Math.exp(num) //返回Math.E的num次幂
Math.log(num) //返回num的自然对数
Math.pow(num,power) //返回num的power次幂
Math.sqrt(num) //返回num的平方根
Math.acos(x) //返回x的反余弦值
Math.asin(x) //返回x的反正弦值
Math.atan(x) //返回x的反正切值
Math.atan2(y,x) //返回y/x的反正切值
Math.cons(x) //返回x的余弦值
Math.sin(x) //返回x的正弦值
Math.tan(x) //返回x的正切值
0 个评论
要回复文章请先登录或注册