Javascript 中的数据都是以 64 位浮点 float 存储的。
所有语言对浮点的精度是很难确定的。
如下代码可以实验到问题。
<script>
var a = 0.4;
var b = 0.2;
var c = a + b;
console.log(c == 0.6);
</script>
解决方法是剩以 10 倍,再除以 10。
Javascript 中的数据都是以 64 位浮点 float 存储的。
所有语言对浮点的精度是很难确定的。
如下代码可以实验到问题。
<script>
var a = 0.4;
var b = 0.2;
var c = a + b;
console.log(c == 0.6);
</script>
解决方法是剩以 10 倍,再除以 10。