Javascript中的Math()类型

本文深入讲解JavaScript中的Math对象,包括其属性如自然对数的底数e、π等,以及方法如最大值、最小值、舍入、随机数生成等。同时介绍了Math对象在数学运算中的应用。

Javascript为保存数学公式和信息提供了一个Math对象。

Math对象的属性

    console.log(Math.E);                       //自然对数的底数,常量e的值
    console.log(Math.LN10);                    //10的自然对数
    console.log(Math.LN2);                     //2的自然对数
    console.log(Math.LOG2E);                   //以2为底的e的对数
    console.log(Math.LOG10E);                  //以10为底的e的对数 
    console.log(Math.PI);                      //π的值
    console.log(Math.SQRT1_2);                 //1/2的平方根
    console.log(Math.SQRT2);                   //2的平方根

结果如下:

2.718281828459045
2.302585092994046
0.6931471805599453
1.4426950408889634
0.4342944819032518
3.141592653589793
0.7071067811865476
1.4142135623730951

Math对象中的最大值和最小值方法

max()方法和min()方法用于确定一组数值中的最大和最小值,他们可以接受任意多的参数。
例子如下:

    var max = Math.max(1,2,3,4,5,6,7,8);
    var min = Math.min(3,2,4,5,6,7,9,1,3,2)
    console.log(max);      //8
    console.log(min);      //1

Math对象中的舍入方法

Math类型中有三个方法,可以将小数值舍入为整数值得方法:Math.ceil()方法,Math.floor()方法,和Math.round()方法。
1.Math.ceil()方法:执行向上舍入,总是将数值向上舍入为最接近的整数。
2.Math.floor()方法:执行向下舍入,总是将数值向下舍入为最接近的整数。
3.Math.round()方法:执行标准舍入,这个方法是根据我们数学中的四舍五入来执行的。

    console.log(Math.ceil(3.5));     //4
    console.log(Math.ceil(3.8));     //4
    console.log(Math.ceil(3.2));     //4

    console.log(Math.floor(3.5));     //3
    console.log(Math.floor(3.8));     //3
    console.log(Math.floor(3.2));     //3

    console.log(Math.round(3.5));     //4
    console.log(Math.round(3.8));     //4
    console.log(Math.round(3.2));     //3

Math对象中的random()方法----重要!!!

Math.random()是表示产生随机数的方法,该方法会产生一个0-1之间的随机数。
利用下面的公式,可以利用Math.random()从整数范围内随机选择一个值:

值 = Math.floor(Math.random() * 可能值的总数 + 第一个可能的值)

该公式的含义是:利用Math.floor()方法,对产生的随机数向下取整,因为Math.random()会产生一个小数值,让这个小数值乘上一个整数,之后再加上一个整数,之后对其向下取整,就能得到我们所期望区间的数。
例如:

var num = Math.floor(Math.random() * 10 + 1);

该段代码代表了,总共有10个可能的值(1-10),第一个可能得值是1.
假设我们想求一个2-10之间的随机整数,代码如下:

var num = Math.floor(Math.random() * 9 + 2);

Math()对象的其他方法:
下列的方法一一列举,就不举例啦~

    Math.abs(num);          //返回num的绝对值
    Math.exp(num);          //返回Math.E的num次幂
    Math.log(num);          //返回num的自然对数
    Math.pow(x,y);          //返回x的y次幂
    Math.sqrt(num);         //返回num的平方根
    Math.acos(x);           //返回num的反余弦值
    Math.asin(x);           //返回num的反正弦值
    Math.atan(x);           //返回num的反正切值
    Math.atan2(y,x);        //返回y/x的反正切值
    Math.cos(x);           //返回num的余弦值
    Math.sin(x);           //返回num的正弦值
    Math.tan(x);           //返回num的正切值

参考书籍:《Javascript高级程序设计》

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值