为什么Javasript严格的比较行为方式呢?

时间:2010-02-16 00:29:18

标签: javascript comparison operators strict

  

可能重复:
  Is JavaScript’s math broken?

如果Javascript的“严格比较”运算符与传统运算符之间的主要区别是类型强制,为什么会这样做

0.1+0.2===0.3;

返回false?

2 个答案:

答案 0 :(得分:3)

在Firefox和Chrome中,0.1 + 0.20.30000000000000004,不等于0.3。这可能是由于无法将0.1完全表示为浮点数而引起的。

答案 1 :(得分:0)

因为0.1很棘手 它的无理性以二进制形式重复出现(见评论)

EDIT
实际上我在这里wing,我肯定不知道。有没有可以反驳或提供证据的Math.boffin? 会非常有趣