1,JavaScript 中的数字中有一些很奇葩的现象.
在 Chrome 控制台中可以自己做一下实验:
1 === 1.0 ; //true
习惯了强类型语言, 如 java,c,OC 看到这个结论还是有点小迷茫的. 这是因为 JavaScript 内部, 所有数字都是以 64 位浮点数形式存储的, 包括正数. 它遵循 IEEE 754 https://baike.baidu.com/item/IEEE 754?fr=aladdin 标准.
再看, 浮点数的计算.
0.1 + 0.2;
浮点数
发现, 0.3 - 0.2 不等于 0.2 - 0.1. 所以在做浮点数计算和比较的时候还是要小心的.
对于整数运算, JavaScript 仅支持 32 位
来源: http://www.bubuko.com/infodetail-2550737.html