为什么 0.1 + 0.2 != 0.3

119 篇文章 22 订阅 ¥19.90 ¥99.00
这篇博客探讨了在JavaScript中0.1+0.2不等于0.3的问题,源于二进制表示小数的精度误差。文章通过实例解释了浮点数在计算机中的存储缺陷,并介绍了如何使用parseFloat和toFixed等方法来处理这种精度问题。
摘要由CSDN通过智能技术生成
发现问题:

我们都知道计算机是通过二进制来存储东西的,那么 0.1 在二进制中会表示为

// (0011) 表示循环
0.1 = 2^-4 * 1.10011(0011)

注:其他小数都会存在类似的问题

解决问题:
parseFloat((0.1 + 0.2).toFixed(10)) === 0.3 // true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值