JS中采用 IEEE754 双精度版本 (64位), 0.1 + 0.2 会被计算机转成二进制,转换过程后最终的结果存成64位发生了截取,导致计算后的结果再转成十进制时发生了精度丢失.
IEEE754
解决办法
(0.1+0.2).toFixed(2)
(0.1 * 100 + 0.2 * 100) / 100
← Object.prototype.toString 函数柯里化 →