【发布时间】:2020-03-08 04:04:58
【问题描述】:
我的以下值给出了错误的总数。
let a = 86.2500;
let b = 32.3550;
alert(a+b); //return 118.60499999999999 , expected 118.605
alert((a+b).toFixed(2)) //return 118.60 , expected 118.61
当我用计算器计算上述值时,它给出了我的预期结果,但 javascript 给了我意想不到的结果。获得预期结果的原因和解决方案是什么?
【问题讨论】:
-
@Sadikhasan 这个答案可能会帮助你stackoverflow.com/a/21323330/2943218
-
@AnantSingh---AlivetoDie 如果你有计算器,请计算你得到的结果并告诉我。你得到我预期的结果了吗?如果我错了,请纠正我以获得我的预期结果。
-
其中一个数字不能精确地表示为二进制值。
1/3在 base 10 中也有同样的问题。
标签: javascript jquery