欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js保留2位小数(且四舍五入)

程序员文章站 2024-01-10 15:24:12
...

首先我们来看2个方法:

1 、tofixed方法

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规则。

银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。具体规则如下:

简单来说就是:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。

如下:

> (3.61).toFixed(1)    //四舍
'3.6'
> (3.69).toFixed(1)    //六入
'3.7'
> (3.651).toFixed(1)    //五考虑,五后非零,进
'3.7'
> (3.65).toFixed(1)    //五考虑,五后为零,五前为偶数,舍去
'3.6'
> (3.75).toFixed(1)    //五考虑,五后为零,五前为奇数,进
'3.8'

显然这种规则不符合我们平常在数据中处理的方式。为了解决这样的问题,可以自定义去使用Math.round方法进行自定义式 的实现指定保留多少位数据进行处理。

 

2 、round方法

round() 方法可把一个数字舍入为最接近的整数。跟数学中取舍的规则一样。

说明
对于 0.5,该方法将进行上舍入。

例如,3.5 将舍入为 4,而 -3.5 将舍入为 -3。

实例
把不同的数舍入为最接近的整数:

Math.round(0.60)
Math.round(0.50) 
Math.round(0.49)
Math.round(-4.40) 
Math.round(-4.60)

输出:

1
1
0
-4
-5

所以可以利用round方法进行保留两位小数(带四舍五入)的处理,

计算方法:Math.round(X * 100) / 100.