JS基础之Math对象的属性和方法

1.属性:

· 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()用于确定一组数组中的最小值和最大值。这2个方法都可以接收任意多个数值参数,经常用于避免多余的循环和if语句中确定一组数的最大值。如下:

var max = Math.max(3,54,32,16);
var min = Math.min(3,54,32,16);
console.log(max);    //54
console.log(min);    //3

要找到数组中的最大值和最小值,可以像下面这样使用apply()方法:

var values = [1,2,3,4,5,6,7,8];
var max = Math.max.apply(Math,values);
console.log(max);    //8,这个技巧的关键是吧Math对象作为apply()的第一个参数,从而正确的设置this值,然后可以将任何数组作为第二个参数。
3个舍入方法

· Math.ceil():执行向上舍入,即它总是将数值向上舍入为最接近的整数。

· Math.floor():执行向下舍入,即它总是将数值向下舍入为最接近的整数。

· Math.round():执行标准舍入,即它总是将数值四舍五入为最接近的整数。

console.log(Math.ceil(25.9));   //都26
console.log(Math.ceil(25.5));
console.log(Math.ceil(25.1));

console.log(Math.round(25.9));    //26
console.log(Math.round(25.5));    //26
console.log(Math.round(25.1));    //25

console.log(Math.floor(25.9));    //都25
console.log(Math.floor(25.5));
console.log(Math.floor(25.1));
· Math.random():返回大于等于0小于1的随机数。套用下面的公式,就可以利用Math.random()从某个整数范围内随机选择一个值。

//值 = Math.floor(Math.random()*可能值的总数 + 第一个可能的值)
var num = Math.floor(Math.random()*10+1);
console.log(num);    //随机产生1-10的数
var num = Math.floor(Math.random()*9 + 2);
console.log(num);    //随机产生2-10之间的随机数
多数情况下,其实都可以通过一个函数来计算可能值的总数和第一个可能的值,如:

function selectFrom(LowerValue,upperValue){
    var choices = upperValue - LowerValue + 1;
    return Math.floor(Math.random()*choices + LowerValue);
}
console.log(selectFrom(2,10));//随机产生2-10(包括2和10)的一个数值
利用这个函数,可以方便地从数组中随即取出一项:

function selectFrom(LowerValue,upperValue){
    var choices = upperValue - LowerValue + 1;
    return Math.floor(Math.random()*choices + LowerValue);
}
var colors = ["red","green","yellow","pink","blue"];
var color = colors[selectFrom(0,colors.length-1)];
console.log(color);
· 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.cos(x)——返回x的余弦值

· Math.sin(x)——返回x的正弦值

· Math.tan(x)——返回x的正切值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值