@numio/bigmath is a powerful and reliable JavaScript library designed for precise numerical computations, overcoming common limitations of standard JavaScript number handling. It provides a rich set of functionalities for arithmetic, statistical analysis, data manipulation, and number base conversions, ensuring accuracy even with extremely large numbers and solving notorious floating-point precision issues like 0.1 + 0.2 !== 0.3
.
This update introduces new functionalities:
-
Modulo Operation (
mod
): A newmod
function has been added for performing modulo operations. -
Pipe Function Enhancement: The
mod
function has been integrated into thePipe
function for seamless chaining of operations.
The application currently supports the following operations:
-
Arithmetic:
-
add
: Addition of numbers. -
sub
: Subtraction of numbers. -
mul
: Multiplication of numbers. -
div
: Division of numbers.
-
-
Rounding:
-
round
: Rounding numbers to a specified number of decimal places.
-
-
Data Manipulation:
-
pipe
: Chaining operations together. -
sort
: Sorting arrays.
-
-
Statistical Measures:
-
quartile
: Calculating quartiles of a dataset. -
mean
: Calculating the average of a dataset. -
max
: Finding the maximum value in a dataset. -
min
: Finding the minimum value in a dataset. -
MAD
: Calculating the Median Absolute Deviation (based on either median or mean). -
IQR
: Calculating the Interquartile Range. -
FDR
: Freedman-Diaconis rule
-
-
Comparison:
-
isEqual
: Checking if two values are equal. -
isLeftGreater
: Checking if the left value is greater than the right value. -
isLeftGreaterOrEqual
: Checking if the left value is greater than or equal to the right value.
-
-
Mathematical Functions:
-
sqrt
: Calculating the square root of a number. -
cbrt
: Calculating the cube root of a number. -
abs
: Calculating the absolute value of a number. -
mod
: Modulo operation, which finds the remainder when one number is divided by another
-
-
Number Base Conversion:
-
toBase
: Converting a number to a specified base. -
isHex
: Checking if a string is a valid hexadecimal number. -
isBinary
: Checking if a string is a valid binary number. -
isDecimal
: Checking if a string is a valid decimal number. -
isOctal
: Checking if a string is a valid octal number. -
isNumber
: Checking if a value is a number.
-
-
Utility:
-
Benchmark
: Functionality for benchmarking code execution.
-
npm install @numio/bigmath
yarn add @numio/bigmath
bun add @numio/bigmath
pnpm add @numio/bigmath
deno add jsr:@numio/bigmath
See documentation and examples here: https://numio.deno.dev
Download from NPM - https://www.npmjs.com/package/@numio/bigmath
Download from JSR - https://jsr.io/@numio/bigmath
Home page - https://numio.deno.dev
Change log - https://github.com/shpunter/numio-bigmath/blob/main/CHANGELOG.md
License - https://github.com/shpunter/numio-bigmath/blob/main/LICENSE