关于javascript:js浮点数运算精度丢失问题

精度失落问题存在于浮点数转化为ieee754规范的二进制数的过程中

number类型

js中的number类型采纳双精度浮点型,基于ieee754规范

进制示意

  • 二进制:0b或0B
  • 八进制:es5严格模式禁止应用,es6应用0o为前缀示意(0o777)
  • 十六进制:0X或0x
  • 十进制

进制转换

parseInt,toString

解决方案

  1. 应用toFixed限度精度
(0.1+0.2).toFixed(5)
toFixed四舍五入存在精度问题,
//  实际上,round,ceil,floor都存在该问题
2.335.toFixed(2)  // 2.33

解决方案:
Math.

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理