浮点数精度丢失问题,一般编程语言都有这个情况,解决方法是:
<script type="text/javascript">
var a = 20.33*100;
var b = Math.round(a*10000)/10000;
console.log(b);
</script>
因为20.33是浮点类型,计算过程中会存在精度丢失。
一般先转为整型计算,然后再将结果转回浮点类型。
这个是浮点数精度丢失问题,所有编程语言都有这个情况,你可以看看相关解决方案:
https://www.cnblogs.com/snandy/p/4943138.html
在Js中存在精度问题!比如0.1➕0.2是不等于0.3的!建议博主可以去看看有关精度问题的资料!这也是面试题经常会问到的!
简单处理办法就是 拿计算的结果进行四舍五入不保留小数
可以用decimal.js来解决js种计算结果精度问题
http://mikemcl.github.io/decimal.js/