JS较为标准的四舍五入保留n位小数取法

1.表达式

对x进行四舍五入保留n位小数:

(Math.round(x * 10^n) / (10^n)).toFixed(n);

10的n次方在这里写成10^n只是为了方便表达,js中应该使用Math.pow(10,n)或1en。

2.解释

Math.round:把一个数字舍入为它最接近的整数,>=0.5入,<0.5舍。JavaScript round() 方法

toFixed(n):把一个数按照银行家舍入规则进行舍入,也就是四舍六入五成双。Javascript中 toFixed 的‘奇葩坑’

3.举例

(1)对12.5555进行四舍五入保留2位小数:

x * 10^n:12.5555*100 = 1255.55

Math.round(x * 10^n):Math.round(1255.55) = 1256

Math.round(x * 10^n) / (10^n):1256/100 = 12.56

(Math.round(x * 10^n) / (10^n)).toFixed(n):12.56.toFixed(2) = 12.56

(2)对12.5进行四舍五入保留2位小数:

x * 10^n:12.5*100 = 1250

Math.round(x * 10^n):Math.round(1250) = 1250

Math.round(x * 10^n) / (10^n):1250/100 = 12.5

(Math.round(x * 10^n) / (10^n)).toFixed(n):12.5.toFixed(2) = 12.50

toFixed(n)在这里的作用是强制保留n位小数,就像例(2)所示。

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小