bignumber.js插件 解决精度丢失问题

下载

npm install bignumber.js

导入

import BigNumber from "bignumber.js";

使用

// 加法 plus
let x = new BigNumber(0.1)
let y = x.plus(0.2).toNumber() // 0.3
console.log(BigNumber(0.7).plus(x).plus(y).toNumber()) // 1.1
console.log(x.plus('0.1').toNumber()) // 0.2

// 减法 minus
let x2 = new BigNumber(0.3)
console.log(x2.minus(0.1).toNumber()) // 0.2

// 乘法 multipliedBy
let x3 = new BigNumber(0.6)
console.log(x3.multipliedBy(3).toNumber()) // 1.8

// 除法 div idiv(保留整数)   保留位数 dp
let x4 = new BigNumber(335)
console.log(x4.div(6).toNumber()) // 55.833333333333336
console.log(x4.div(6).dp(3).toNumber()) //55.833  ---确定小数位数,取三位小数
console.log(x4.idiv(6).toNumber()) //55  ---返回整数

// 求和 sum
var x7 = BigNumber.sum('11', 23)
console.log(x7.toNumber()) // 34

// 多个参数求和 sum(...arr)
let arr7 = [2, new BigNumber(14), '15.9999', 12]
var y7 = BigNumber.sum(...arr7)
console.log(y7.toString()) // '43.9999'

//生成伪随机数,传入参数决定小数位数
console.log(BigNumber.random().toNumber()) // 0.1501651215311695
console.log(BigNumber.random(3).toNumber()) // 0.150
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值