首页 > 解决方案 > JavaScript 中无法解释的浮点除法行为

问题描述

我在做一些工作时遇到了一些问题......

let num = 9.340 / 10;

console.log(num) // gives this number 0.9339999999999999, instead of 0.934

我知道如何用 toPrecision() 或一些数学库来解决这个问题,但这不是问题。我想了解为什么会发生这种情况...我知道从数学上讲这是正确的,就像 0.9999999... 可以证明等于 1,但常识告诉我显示 0.934 更合乎逻辑...并且更令人震惊的是 (0.934 == (9.34 / 10)) 返回 false?

请,如果有人可以向我解释这种行为,我将非常感激,干杯:)

标签: javascriptmathfloating-pointprecisiondivision

解决方案


推荐阅读