bigNumber.js的简单使用

sum

计算传入的参数和,参数类型可以是 String,Number

// 两数之和
var x = BigNumber.sum('11', 23)
x.toNumber() // 34

// 多个参数
arr = [2, new BigNumber(14), '15.9999', 12]
var y = BigNumber.sum(...arr)
y.toString() // '43.9999'

maximum,minimum

求最大值,简写max,min

var x = [2222, 3333, '4444']
BigNumber.max(...x).toNumber() // 4444
BigNumber.min(...x).toNumber() // 2222

decimalPlaces(dp)

确定小数位数

var x = new BigNumber(1234.5678912345)
var y = new BigNumber(1234.56)
x.dp(2).toNumber() // 1234.57
y.dp(10).toNumber() // 1234.56

plus

加法运算

0.1 + 0.2 // 0.30000000000000004
var x = new BigNumber(0.1)
x.plus(0.2).toNumber() // 0.3

minus

减法运算

0.3 - 0.1 // 0.19999999999999998
var x = new BigNumber(0.3)
x.minus(0.1) // 0.2

multipliedBy(times)

乘法运算

0.6 * 3 // 1.7999999999999998
var x = new BigNumber(0.6)
x.times(3) // 1.8

dividedBy(div)

除法运算

var x = new BigNumber(300)
x.div(3).toNumber() // 100
x.div(7).dp(3).toNumber() // 42.857

dividedToIntegerBy(idiv)

除法运算,返回整数

var x = new BigNumber(5)
x.idiv(3).toNumber() // 1
x.idiv(0.7).toNumber() // 7

modulo(mod)

取余

1 % 0.9 // 0.09999999999999998
var x = new BigNumber(1)
x.mod(0.9).toNumber() // 0.1

toFixed

控制小数位数,不够后面补0

var x = 3.456
var y = new BigNumber(x)
x.toFixed().toNumber() // 3
y.toFixed().toNumber() // 3.456
y.toFixed(0).toNumber() // 3
y.toFixed(2).toNumber() // 3.46
y.toFixed(5).toNumber() // 3.45600

 更多方法请参照:https://xjq.icu/FrontEnd/Bignumberjs.html#multipliedby-times

posted @ 2021-02-01 10:46  wjs0509  阅读(4171)  评论(3编辑  收藏  举报