biggystring
v4.2.3
Published
Full floating point big number library using regular Javascript string
Readme
biggystring
Floating point big number library using only strings as inputs and outputs
Install
npm install biggystringUse
const bs = require('biggystring')Basic Math
bs.add('32', '10') // => '42'
bs.sub('32', '10') // => '22'
bs.mul('32', '10') // => '320'
bs.div('32', '10') // => '3' Truncates remainderHex
bs.add('0xa', '10') // => '20'
bs.add('0xa', '0x20') // => '42'
bs.add('10', '0x10') // => '26'Comparisons
bs.gt('32', '10') // => True
bs.lt('32', '10') // => False
bs.gte('32', '32') // => True
bs.lte('32', '10') // => False
bs.eq('32', '10') // => False
bs.eq('32', '32') // => TrueFloating point operations (base 10 only)
bs.add('3.2', '1.3') // => '4.5'
bs.sub('3.2', '1.3') // => '1.9'
bs.mul('3.2', '1.3') // => '4.16'
// For `div`, 3rd arg is decimal precision, 4th arg is base
bs.div('10', '3.0', 5, 10) // => '3.33333'
bs.div('1.23', '3.3', 5, 10) // => '0.37272'Rounding functions (base 10 only)
bs.floor('123.456', 0) => '123'
bs.floor('123.456', 1) => '120'
bs.floor('123.456', -1) => '123.4'
bs.ceil('123.456', 0) => '124'
bs.ceil('123.456', 1) => '130'
bs.ceil('123.456', -1) => '123.5'
bs.round('123.456', 0) => '123'
bs.round('125.456', 1) => '130'
bs.round('123.456', -1) => '123.5'