1沐飘、js有精度問題, 對于一些金額的計算就總是與偶莫名其妙的問題
2琼掠、decimal.js是使用的二進制來計算的, 所以能解決js的精度問題
import { Decimal } from 'decimal.js'
//加
export function add(a, b) {
const av = new Decimal(a)
const bv = new Decimal(b)
return av.plus(bv)
}
//減
export function sub(a, b) {
const av = new Decimal(a)
const bv = new Decimal(b)
return av.minus(bv)
}
//乘
export function mul(a, b) {
const av = new Decimal(a)
const bv = new Decimal(b)
return av.times(bv)
}
// 除
export function div(a, b) {
const av = new Decimal(a)
const bv = new Decimal(b)
const cv = av.dividedBy(bv)
if (!cv.isFinite()) {
return new Decimal(0)
}
return cv
}