toFixed的坑
作者:互联网
因为项目需要使用小数,所以第一时间想到了javaScript 的toFixed 方法,开始测试了一下,觉得没有问题就没管了,后来同事偶然间发现 toFixed 之后的数据不对,后来自己查阅资料才知道,toFixed的坑:
toFixed使用的是银行家舍入规则。 银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。 简单来说就是:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一
于是放弃了使用toFixed处理小数,直接自己写了一个方法
/** * @param num:需要转换的值 * @param point 保留几位小数 */toFixedNumber: function (num, point) { if (isNaN(num)) { return null } point = Math.pow(10, point) num = num * point if (num === +num) { return parseInt(num + 0.5) / point } else { return +num } }
调用方法:
var a=37.524; console.log("result:"+toFixedNumber(a,2));
标签:舍入,return,point,num,toFixed,四舍 来源: https://www.cnblogs.com/hspl/p/11727791.html