产生浮点数计算精度不准确的原因: 在计算机角度,计算机算的是二进制,而不是十进制。二进制后变成了无线不循环的数,而计算机可支持浮点数的小数部分可支持到52位,所有两者相加,在转换成十进制,得到的数就不准确了,加减乘除运算原理一样。
我的解决办法 : 使用math.js
npm i mathjs
import * as math from 'mathjs';
return
math.add(math.bignumber(num1),math.bignumber(num2)); //加
return
math.multiply(math.bignumber(num1),math.bignumber(num2));// 乘
return
math.subtract(math.bignumber(num1),math.bignumber(num2)); //减
return
math.divide(math.bignumber(num1),math.bignumber(num2));//除