JavaScript中Math对象的方法介绍


Posted in Javascript onJanuary 05, 2017

1.比较最值方法

比较最值有两种方法,max() 和 min() 方法。

1.1 max() 方法,比较一组数值中的最大值,返回最大值。

var maxnum = Math.max(12,6,43,58,70);
alert(maxnum); //"70"

1.2 min() 方法,比较一组数值中的最小值,返回最小值。

var minnum = Math.min(12,6,43,58,70);
alert(minnum); //"6"

2.数值舍入方法

2.1 ceil() 方法,将数值向上舍入为最接近的整数。

alert(Math.ceil(6.1)); //"7"
alert(Math.ceil(6.5)); //"7"
alert(Math.ceil(6.9)); //"7"

不管6后面的小数位是几,该方法总是向上舍入,结果都是7。

2.2 floor() 方法,将数值向下舍入为最接近的整数。

alert(Math.floor(6.1)); //"6"
alert(Math.floor(6.5)); //"6"
alert(Math.floor(6.9)); //"6"

不管6后面的小数位是几,该方法总是向下舍入,结果都是6。

2.3 round() 方法,将数值四舍五入为最接近的整数。

alert(Math.round(6.1)); //"6"
alert(Math.round(6.5)); //"7"
alert(Math.round(6.9)); //"7"

该方法四舍五入,和我们小学时学的舍入规则一致。

3.产生随机数方法

random() 方法,返回一个大于等于0小于1的随机数,其实是小数值。随机数范围用区间表示即为[0,1),包含0不包含1。

这里有一个公式:

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

套用这个公式可以返回某个整数范围内的随机数。

我们注意到了上面的公式中调用了 floor() 方法,因为 random() 总是返回一个小数,而我们要返回的是整数,所以得对其返回值进行舍入操作。

比如我们要随机产生1到10之间的整数,[1,10],包含1和10,可以套用公式编写下面的代码:

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

[1,10] 之间包含10个数,因此可能值的总数是10,则 random()*10,即产生 [0,10) 之间的随机数;

第一个可能的值是1,则 random()*10+1,即产生 [1,11) 之间的随机数;

此时它产生的最小整数是1了,但最大整数并不是10,它会产生10.xxxxxxxxxx 这样的小数,于是用 floor() 将其向下舍入,这样它产生的最大整数就是10了。

如果要随机产生 [5,10] 之间的整数,那么套用公式即可编写这样的代码:

var num = Math.floor(Math.random() * 6 + 5);

[5,10] 之间包含6个数,所以可能值的总数是6,则 random()*6;第一个可能的值是5,所以 random()*6+5;最后用 floor() 将其向下舍入。

其他情况可以自己举例推算。

4.其他计算方法

下面的这样方法都是用来进行各种简单或复杂的计算。

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 的正切值

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
Mar 01 Javascript
jQuery模拟select实现下拉菜单功能
Jun 20 Javascript
Angular 理解module和injector,即依赖注入
Sep 07 Javascript
AngularJS学习第一篇 AngularJS基础知识
Feb 13 Javascript
BootstrapTable refresh 方法使用实例简单介绍
Feb 20 Javascript
基于JavaScript实现微信抢红包功能
Jul 20 Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
May 16 Javascript
Element Table的row-class-name无效与动态高亮显示选中行背景色
Nov 30 Javascript
快速了解Node中的Stream流是什么
Feb 13 Javascript
vue+iview/elementUi实现城市多选
Mar 28 Javascript
java和js实现的洗牌小程序
Sep 30 Javascript
JS数据类型STRING使用实例解析
Dec 18 Javascript
微信小程序 Tab页切换更新数据
Jan 05 #Javascript
微信小程序 省市区选择器实例详解(附源码下载)
Jan 05 #Javascript
微信小程序 Template详解及简单实例
Jan 05 #Javascript
echarts3 使用总结(绘制各种图表,地图)
Jan 05 #Javascript
微信小程序 数组中的push与concat的区别
Jan 05 #Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
Jan 05 #Javascript
bootstrap制作jsp页面(根据值让table显示选中)
Jan 05 #Javascript
You might like
php自定文件保存session的方法
2014/12/10 PHP
php自定义错误处理用法实例
2015/03/20 PHP
详解PHP归并排序的实现
2016/10/18 PHP
PHP 实现公历日期与农历日期的互转换
2017/09/13 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
用正则xmlHttp实现的偷(转)
2007/01/22 Javascript
Javascript new关键字的玄机 以及其它
2010/08/25 Javascript
使用jQuery避免鼠标双击的解决方案
2013/08/21 Javascript
jquery给图片添加鼠标经过时的边框效果
2013/11/12 Javascript
javascript中的self和this用法小结
2014/02/08 Javascript
一个通过script自定义属性传递配置参数的方法
2014/09/15 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
JS实现仿QQ聊天窗口抖动特效
2015/05/10 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
微信和qq时间格式模板实例详解
2016/10/21 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
swiper实现导航滚动效果
2020/12/13 Javascript
NodeJS和浏览器中this关键字的不同之处
2021/03/03 NodeJs
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
Python常用时间操作总结【取得当前时间、时间函数、应用等】
2017/05/11 Python
python利用itertools生成密码字典并多线程撞库破解rar密码
2019/08/12 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
解决python执行较大excel文件openpyxl慢问题
2020/05/15 Python
区分python中的进程与线程
2020/08/13 Python
让IE支持CSS3的不完全兼容方案
2014/09/19 HTML / CSS
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
思想汇报范文
2013/11/04 职场文书
客服服务心得体会
2013/12/30 职场文书
违反工作纪律检讨书
2014/02/15 职场文书
初中生操行评语大全
2014/04/24 职场文书
日语系毕业求职信
2014/07/27 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
解决pycharm下载库时出现Failed to install package的问题
2021/09/04 Python
详解在SQLPlus中实现上下键翻查历史命令的功能
2022/03/18 SQL Server
python使用shell脚本创建kafka连接器
2022/04/29 Python
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android