JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储。
所有的编程语言,包括 JavaScript,对浮点型数据的精确度都很难确定:
var x = 0.1;
var y = 0.2;
var z = x + y // z 的结果为 0.30000000000000004
if (z == 0.3) // 返回 false
为解决以上问题,可以用整数的乘除法来解决:
var z = (x * 10 + y * 10) / 10; // z 的结果为 0.3
JavaScript中由于浮点数存储的特性,导致0.1加0.2不等于0.3。为了解决这个问题,可以使用整数乘除法来确保计算的精确性,例如将0.1和0.2分别乘以10再相加,然后除以10得到0.3的结果。这种方法避免了浮点数精度误差的影响。
1140

被折叠的 条评论
为什么被折叠?



