JavaScript 解决小数点数字【加减乘除】计算不精确
简介:当JavaScript作小数计算时存在这精度不准确的Bug。
原因:数字类型只有number类型,number类型相当于其他强类型语言中的double类型(双精度浮点型
),不区分浮点型和整数型。
怎么可以向Java语言Bigdecimal类型一样计算呢?
解决办法:
1. Node安装依赖:
npm install --save decimal.js
2.在项目引用:
import { Decimal } from 'decimal.js'
3.在项目使用:【加:add 减:sub 乘:mul 除:div】
//加法运算 const a = 0.12 const b = 0.21 console.log(new Decimal(a).add(new Decimal(b)).toNumber()) //减法运算 const a = 2.0 const b = 1.99 console.log(new Decimal(a).sub(new Decimal(b)).toNumber().toFixed(2) //乘法运算 const a = 1.01 const b = 1.02 console.log(new Decimal(a).mul(new Decimal(b)).toNumber()) //除法运算 const a = 0.031 const b = 11 console.log(new Decimal(a).div(new Decimal(b)).toNumber())
只是热爱开发的小渣渣!!