bignumber-fns
Useful functions to make working with bignumber.js more enjoyable
Installation
npm i bignumber-fns bignumber.js
Usage
import { asBigNumber, formatNumber, isBigNumber } from "bignumber-fns"
isBigNumber(5)
const five = asBigNumber(5)
isBigNumber(five)
const six = asBigNumber("6")
isBigNumber(six)
const seven = asBigNumber(new BigNumber(7))
isBigNumber(seven)
const eighteen = five.plus(six).plus(seven)
isBigNumber(eighteen)
formatNumber("1000.12")
Exported Methods
asBigNumber(value, { fallback?, base? })
Converts a BigNumber-Like param (string, number, BigNumber) and attempts to convert it to the BigNumber type. If the conversion fails (e.g. NaN is provided), it will attempt to return the fallback parameter as a BigNumber. If no fallback is provided, or if the fallback can not be converted to a BigNumber (e.g. NaN is provided), then the method will throw.
import { asBigNumber } from "bignumber-fns"
const value = "5"
const bignumber = asBigNumber(value, { fallback: 0 })
const fallback = asBigNumber(undefined, { fallback: 0 })
const hex = asBigNumber("AB", { base: 16 })
const hexFallback = asBigNumber(undefined, { fallback: "A", base: 16 })
isBigNumber(value)
Determines if a parameter is a BigNumber type, while also indicating to the Typescript parser to treat the item as a BigNumber going forward.
import { isBigNumber } from "bignumber-fns"
isBigNumber(5)
isBigNumber(new BigNumber(5))
formatNumber(value, { numDecimals?, decimalSeparator?, thousandsSeparator? })
Format a number with thousands separators and a fixed number of decimal places.
import { formatNumber } from "bignumber-fns"
formatNumber(5)
formatNumber(5000.555555, { numDecimals: 1 })
formatNumber(1000, { thousandsSeparator: "." })
formatNumber("1.23", { decimalSeparator: "," })
formatNumber(1234567890)
Brought to you by Catena Labs
This project is maintained and funded by Catena Labs.