js加减法,为什么用大数字浮点数加减不会有精度问题..

新手上路,请多包涵

比如0.1+0.2=0.3000000004,这个我明白
但是100.1+100.2 =100.3 类似大数字的减法也是没有出现精度问题..根据js计数的方法,我想不到如何推断解释这个

回复
阅读 2.5k
4 个回答

JavaScript 浮点数陷阱及解法可以参考一下原理,做一下十进制换二进制计算然后再转换十进制小数处理的过程,超过的精度会自动做凑整处理,刚好会把多出来的小数处理掉,看到的就会是100.3

并不是大数字就不会有这种问题,而是某些数字加起来刚好没有

1000.1+1000.2 = 2000.3000000000002
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏