前端计算数字精度丢失问题解决方法记录 | 京东云技术团队

💡 原文中文,约1700字,阅读约需4分钟。
📝

内容提要

本文介绍了JavaScript中浮点型计算的精度问题及两种解决方案:转为浮点型计算后再转为Number类型和使用number-precision库。

🎯

关键要点

  • JavaScript中的浮点型计算存在精度问题。

  • 浮点型数据主要有单精度float和双精度double。

  • JavaScript中所有数字都为Number类型,遵循IEEE 754标准。

  • JavaScript以64位双精度浮点数存储所有Number类型值。

  • 解决方案一:使用Number(parseFloat(20.24*100).toPrecision(16))进行精度运算。

  • 解决方案二:引入number-precision库进行精确计算。

  • number-precision库提供多种方法,如加法、减法、乘法和除法等。

  • 使用number-precision库可以避免浮点数计算中的常见错误。

➡️

继续阅读