JavaScript内置对象--Math对象

在JavaScript开发中,除了简单加减乘除运算之外,有时候开发,特别是动画或者游戏开发中,需要使用复杂的数学运算。JavaScript中Math对象提供了一系列属性和方法,能够满足大多数场合的需要。

Math对象常用的属性是Math.PI,这个属性在很多角度计算上需要使用到。

Math对象方法

ceil()表示向上舍入,把数字向上舍入到最接近的整数。

floor()表示向下舍入,把数字向下舍入到最接近的一个整数。

round()表示通常的四舍五入方法舍入为最接近的整数

 

random()方法是Math对象一个非常常用的方法。返回一个0-1之间的随机数,但是不包括0和1。random()函数用途最多的是返回一个指定范围内的随机数,但是本身random()返回的值是0-1之间的数值,但是不包括0和1,所以我们需要改造一下这个函数,使得可以返回可以指定范围内的随机数。

<script type="text/javascript"> document.write("Using the Math.random() method!<br/>"); document.write(Math.random()); document.write(Math.floor(Math.random()*100+1));//1-100之间的随机整数,包括1 //使用random()和floor()方法获得某个范围内的随机数 var number=Math.floor(Math.random()*total_number_of_choices+first_possible_value); </script>

在有的应用场合,我们防止一个请求会被CDN或者代理服务器缓存相关的数据值,我们需要在请求的后面加上一个时间戳。当然也可以用后台代码生成一个GUID来做。可以采用Math对象的方法和Date对象的方法实现。

<script type="text/javascript"> function getDataWithoutCache(URL){ var _url= URL if (!_url)return; //Clear the cache using the timestamp var timestamp = new Date(); var queryString = ""+Math.ceil(Math.random() * 9999) + timestamp.getUTCHours() + timestamp.getUTCMinutes() + timestamp.getUTCSeconds(); _url= _url+ queryString; </script>

在拼接字符串前面之所以加上双引号,是因为在JavaScript默认情况下,2个数字相加,是直接使用算术里面的加法进行的,而不是字符串拼接。如下代码输出结果是多少?

var a=10; var b=5; var result1=a+b; document.write(result1);

然后再看如下代码输出结果是多少?

var result2=" "+a+b; document.write(result2);

然后再看如下代码输出结果是多少?通过这2段代码,提醒我们平时在JavaScript开发中需要“+”操作符的使用,如果使用不当,虽然不会报错,但是后面很多代码逻辑是有问题。"+"操作符在遇到表达式中有字符串的情况下,将进行字符串拼接,返回的是一个字符串。我们可以通过Math对象的方法完成一个随机抽奖的小程序。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值