javascript - 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?
请,如果有人可以向我解释这种行为,我将非常感激,干杯:)
解决方案
推荐阅读
- rust - 如何使用 ncurses crate 显示方框图字符?
- kubernetes - 使用 Recreate 策略和 maxSurge 部署 Kubernetes?
- c# - LinkedList 中的 C# 基数排序实现
- python - 我应该使用什么模式来打印以下代码的日期、时间和进程 ID?
- c# - 在c#上使用反射获取字段的值
- apache-spark - SPARK 如何在出错的情况下获取列名(FAILFAST 模式)?
- jmeter - 我有 JSR233 侦听器,在 JMeter 非 gui 模式下似乎被忽略了
- javascript - 最终结果中 javascript 中的颜色代码
- angular - Angular6如何将共享数据与同级服务绑定,以便每个实例都有自己的引用
- angular - 带有formarray的Angular 9动态控件无法正常工作