最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
js中round()、oFixed()四舍五入函数
时间:2022-11-14 22:02:49 编辑:袖梨 来源:一聚教程网
round方法
巨强的四舍五入的转换函数,如下:
代码如下 | 复制代码 |
function round(v,e){ var t=1; for(;e>0;t*=10,e--); for(;e<0;t/=10,e++); return Math.round(v*t)/t; } |
参数里的:
v表示要转换的值
e表示要保留的位数
函数里的两个for,这个是重点了,
第一个for针对小数点右边的情况,也就是保留小数点右边多少位;
第二个for针对小数点左边的情况,也就是保留小数点左边多少位。
for的作用,就是计算t的值,也就是v应该放大或者缩小多少倍的倍数(倍数=t)。
for这里利用到了for里的两个特性,条件判断和计数器累计(循环),
当e满足条件时for继续,并且e每次累加(e的每次累加,就是给for制造不满足循环的条件)的同时,也计算t的值。
最后利用了原生的round方法来计算被放大/缩小后的v的结果,然后把结果放大/缩小到正确的倍
Javascript1.5新增函数oFixed
在Javascript1.5(IE5.5+,NS6+以上版本支持)中,新增了2个专门用于货币流通的函数:
oFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
在本例中,我们将把数字舍入为仅有一位小数的数字:
代码如下 | 复制代码 |
|
输出:
Show the number 13.37 with one decimal:
13.4
Number.toFixed(x)是将指定数字截取小数点后x位,Number.toPrecision(x)是将整个数字截取指定(x)长度。
注意,一个是计算小数点后的长度,一个是计算整个数字的长度。
请看完整示例:
Javascript:
代码如下 | 复制代码 |
var aa = 2.3362; document.write(aa.toFixed(1)); // 2.3 document.write(aa.toFixed(2)); // 2.34 document.write(aa.toPrecision(2)); // 2.3 document.write(aa.toPrecision(3)); // 2.34 document.write(Math.round(aa * 10) / 10); // 2.3 document.write(Math.round(aa * 100) / 100); // 2.34
|
相关文章
- 云星穹铁道权益升级怎么玩 云崩铁权益升级活动介绍 12-03
- 以闪亮之名山中绘梦怎么玩 以闪亮之名滢然花梦套装活动介绍 12-03
- 以闪亮之名绿野梦歌礼包怎么样 以闪亮之名绿野梦歌拍照礼包介绍 12-03
- 光遇12.6有什么更新 光遇12月6日更新内容介绍 12-03
- 伍六七暗影交锋测试资格怎么获得 伍六七暗影交锋内测资格获取方法 12-03
- 无限暖暖晶莹诗集怎么样 12-03