比较出了问题,或者,这怎么可能是假的?

时间:2017-01-11 23:10:45

标签: javascript node.js

我只是在Node.js中随机发现了以下内容

0.3 + 0.2 === 0.5
true

0.1 + 0.2 === 0.3
false

任何人都对这里发生的事情有解释吗? 测试版本在Node.js v6.9.1内核上为4.4.0-57-generic。 欢呼任何能够向我解释的人!

1 个答案:

答案 0 :(得分:0)

浮点值以2的幂表示。 .1和.2不能表示为有限数量的2的幂的总和,因此添加它们会有一些不准确之处。同样适用于.3,但幸运的是,在第一种情况下,不准确性会得到平衡。这里有更详细的描述。
http://0.30000000000000004.com/