uniapp使用decimal.js处理js的加减乘除的计算精度问题
npm i decimal.js
import { Decimal } from 'decimal.js';//引入 let num1 = 351921.8; let num2 = 354231.9; let endNum:number // 加法 endNum:number = new Decimal(num1).add(new Decimal(num2)) // 减法 endNum:number = new Decimal(num1).sub(new Decimal(num2)) // 乘法 endNum:number = new Decimal(num1).mul(new Decimal(num2)) // 除法 endNum:number = new Decimal(num1).div(new Decimal(num2))
也可以封装成公共的类,在utils下新建文件cal.ts
/* 解决js计算精度问题 */ import { Decimal } from 'decimal.js';//引入 class Cal { jia(num1,num2) { return new Decimal(num1).add(new Decimal(num2)) } jian(num1,num2) { return new Decimal(num1).sub(new Decimal(num2)) } cheng(num1,num2) { return new Decimal(num1).mul(new Decimal(num2)) } chu(num1,num2) { return new Decimal(num1).div(new Decimal(num2)) } } export const cal = new Cal(); /* 调用方法及返回值 */ /* import { cal } from '../../../utils/cal'; let a =0.88; let b = 0.99; let result:number //计算结果 result = cal.jia(a,b) //加 result = cal.jian(a,b) //减 result = cal.cheng(a,b) //乘 result = cal.chu(a,b) //除 */
再忙也别忘记学习