JavaScript 添加操作返回错误的结果

javascript add operation returns bad result

本文关键字:结果 错误 返回 添加 操作 JavaScript      更新时间:2023-09-26

我有一个有趣的愚蠢问题:为什么javascript显示这种10.2 - 17 = -6.800000000000001

在这里找到了类似的东西:在 javascript 中计算减号运算返回一个不正确的值,但我无法对数字进行四舍五入。

我可以在不指定使用多少位小数的情况下以某种方式解决此问题吗?(我实际上有一些结果可以有 6-7 位小数)

浮点运算并不总是精确的。

特别是没有将 10.2 精确表示为浮点值,因此存储了最接近的可表示值。此值将与 10.2 略有不同。

最简单的处理方法是在显示数字时将数字四舍五入到一定数量的小数位。

某些语言具有可以精确表示 10.2 的decimal类型。然而:

  • Javascript没有像这样的内置类型,所以你必须使用第三方库。
  • 十进制浮点数并不能解决所有问题。例如,0.1 / 0.3的结果不能完全表示为小数。显示结果时,可能仍需要将结果四舍五入到一定数量的小数位数。