精度失落问题存在于浮点数转化为 ieee754 规范的二进制数的过程中
number 类型
js 中的 number 类型采纳双精度浮点型,基于 ieee754 规范
进制示意
- 二进制:0b 或 0B
- 八进制:es5 严格模式禁止应用,es6 应用 0o 为前缀示意(0o777)
- 十六进制:0X 或 0x
- 十进制
进制转换
parseInt,toString
解决方案
- 应用 toFixed 限度精度
(0.1+0.2).toFixed(5)
toFixed 四舍五入存在精度问题,// 实际上,round,ceil,floor 都存在该问题
2.335.toFixed(2) // 2.33
解决方案:Math.