解决js小数段精准度丢失问题
引言: 开发项目中,遇到 0.07 * 100 = 7.000000000000001 的问题,一眼确认是精度丢失了,以前遇到过 0.1 * 0.2 = 0.020000000000000004的问题,第一次遇到0.07精准度也会丢失,在此给出解决方案,以供君参考。
解决方案:
1、取整数
Math.round((0.07*100)) // 7
2、保留小数点 (推荐)
parseFloat((0.07 * 100).toPrecision(12)) // 7
parseFloat((0.173 * 100).toPrecision(12)) // 17.3
// 同样可以解决 0.1 + 0.2 的问题
parseFloat((0.01 + 0.02).toPrecision(12)) // 0.03
如果对君有帮助,请一键三连支持,谢谢