JavaScript四舍五入并保留两位小数

转:http://blog.csdn.net/daguanjia11/article/details/48650711

在JavaScript中,有一个问题一直被没有很好地解决,就是小数点保留指定的位数,也就是我们通常说的Math.Round()函数。

首先,JavaScript有自带的Math.Round()函数,但是返回的是个整数,无法精确到小数点后。

Number.toFixed()方法,能保留小数点后面的指定位数,但如果执行2.1.toFixed(2)的话,会返回2.10,而不是我们期待的2.1,所以,这个方法也不太可取。

最近我发现一个很简单的方法,假设我要对0.105进行四舍五入并保留两位小数,如果直接调用Math.Round()的话,结果是0,如果直接调用.toFixed(2)方法的话,会返回0.10,最简单有效的方法就是对0.105先乘以100,再调用Math.Round(),然后再除以100,就OK了。

var number = 0.105;
alert(Math.round(number * 100) / 100);

猜你喜欢

转载自blog.csdn.net/caixiajia/article/details/79257909