js浮点数运算精度丢失问题

精度丢失问题存在于浮点数转化为ieee754标准的二进制数的过程中
number类型
js中的number类型采用双精度浮点型,基于ieee754标准
进制表示

  • 二进制:0b或0B
  • 八进制:es5严格模式禁止使用,es6使用0o为前缀表示(0o777)
  • 十六进制:0X或0x
  • 十进制
进制转换
【js浮点数运算精度丢失问题】parseInt,toString
解决方案
  1. 使用toFixed限制精度
(0.1+0.2).toFixed(5) toFixed四舍五入存在精度问题, //实际上,round,ceil,floor都存在该问题 2.335.toFixed(2)// 2.33解决方案: Math.

    推荐阅读