JSPM

@choleski/abacus

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • 0
  • Score
    100M100P100Q32322F
  • License MIT

Package Exports

  • @choleski/abacus
  • @choleski/abacus/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@choleski/abacus) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Abacus

abacus.js is a light javascript library for node.js built with c code and gyp bindings. It supports arithmetic operations on floting point.

How to install

npm i abacus

or

yarn add abacus

Usage

In all examples below, semicolons and toString calls are not shown. If a commented-out value is in quotes it means toString has been called on the preceding expression.

The library exports a single constructor function, Abacus, which expects a single argument that is a number, string or Abacus instance.

n = new Abacus(15);

n.min(2)		// '13'
n.plus(5)		// '18'
n.gte(20)		// false

If using values with more than a few digits, it is recommended to pass strings rather than numbers to avoid a potential loss of precision.

addition

Abacus(15).plus(5) 	// '20.00000000'

Substraction

Abacus(15).minus(5); 	// '10.00000000'

Multiplication

Abacus(15).multiply(5); // '75.00000000'

Division

Abacus(15).div(5); 	// '3.00000000'

Modulo

Abacus(15).mod(5); 	// '0.00000000'

Power

Abacus(15).pow(5); 	// '759375.00000000'

Floor

Abacus(15.12345).floor(); // '15'

Test

To run the tests using Node.js from the root directory:

npm run test

Each separate test module can also be executed individually, for example:

npm run test ./lib/tests/arithmetic.test.js