一些小数相加时会出现很多位数的情况。
如8个0.05相加,结果是0.39999999999999997
4.2+9.2=13.399999999999998
2.2+9.7=11.899999999999998
这是JavaScript浮点运算的一个bug
查了很多资料,发现了一种最简单的方法。
<html>
<head></head>
<body>
<script>
var a=4.2;
var b=9.2;
alert(Number((a+b).toFixed(2)));
</script>
</body>
</html>
用Number()和 toFixed处理一下就好了
测试了一些数据都没有发现问题
其中 toFixed方法就是保留几位小数
希望可以帮助到大家。
祝,早日升职加薪!