原生 javascript 中四舍五入的函数 tofixed(n) , n为要保留的小数位数。 (0
复制代码 代码如下:
var num=1.0999;
console.log(num.tofixed(20));
http://jsfiddle.net/14x0vhu6/
输出值不是预想的1.0999,而是 1.09990000000000009983,这点需要注意,至于原因有待完善。
另外在不同的浏览器版本中,如果小数点前和要截取的前一位都是0时,可能出现不按常理截取的情况。
复制代码 代码如下:
var num=0.07;
console.log(num.tofixed(1));
http://jsfiddle.net/ogwnw2j3/
值可能为0.0
处理的方法是使用tofixed方法之前加1,使用之后再减1。
复制代码 代码如下:
var number=0.07
var fixnum = new number(number + 1).tofixed(1);//四舍五入之前加1
var fixednum = new number(fixnum - 1).tofixed(1);//四舍五入之后减1,再四舍五入一下
console.log(fixednum);
http://jsfiddle.net/euvn0l1g/
