解决js 浮点数计算运算精度问题

在进行浮点数运算时,比如0.1+0.2 != 0.3,解决思路如下:
1.将结果四舍五入
2.将浮点数转化为整数再将结果除以扩大倍数
3.把浮点数转化为字符串,模拟实际运算的过程

var a = 0.1
var b = 0.2
var c = (a*10)+(b*10)  // 方法二
console.log(a+b)
console.log(c/10)
console.log(parseFloat((a+b).toFixed(2)))  //方法一

如果直接将结果进行toFixed,则是对字符串进行操作,第三种方法可以使用目前一些成熟的库,比如bignumber.js,decimal.js,以及big.js等

posted @ 2020-04-16 16:58  海常7号  阅读(785)  评论(0编辑  收藏  举报