Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
bignumber.js vs. big.js vs. decimal.js vs. Fraction.js (20220325)
- https://github.com/iriscouch/bigdecimal.js/tree/v0.6.1 - https://github.com/MikeMcl/bignumber.js/tree/v9.0.2 - https://github.com/MikeMcl/big.js/tree/v6.1.1 - https://github.com/MikeMcl/decimal.js/tree/v10.3.1 - https://github.com/infusion/Fraction.js/tree/v4.2.0
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Linux x86_64; rv:130.0) Gecko/20100101 Firefox/130.0
Browser:
Firefox 130
Operating system:
Linux
Device Platform:
Desktop
Date tested:
one year ago
Benchmark engine:
Benchmark.js
Native
1839.8M/s
Native + toFixed
20.6M/s
Fraction.js
1.9M/s
big.js
1.6M/s
decimal.js
1.1M/s
bignumber.js
1.0M/s
bigdecimal.js
69K/s
View exact numbers
Test name
Executions per second
✓
Native
1,839,765,760 Ops/sec
Native + toFixed
20,645,804 Ops/sec
Fraction.js
1,915,052 Ops/sec
big.js
1,564,495 Ops/sec
decimal.js
1,127,632 Ops/sec
bignumber.js
1,022,792 Ops/sec
bigdecimal.js
69,289 Ops/sec
HTML Preparation code:
<script src="https://cdn.jsdelivr.net/npm/bigdecimal@0.6.1/lib/bigdecimal.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bignumber.js@9.0.2/bignumber.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/big.js@6.1.1/big.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/decimal.js@10.3.1/decimal.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/fraction.js@4.2.0/fraction.min.js"></script>
Tests:
Native
var a = 0.1; var b = 0.2; ((a + b) * b).toString();
Native + toFixed
var a = 0.1; var b = 0.2; ((a + b) * b).toFixed(9);
decimal.js
var a = new Decimal("0.1"); var b = new Decimal("0.2"); a.plus(b).times(b).toString();
big.js
var a = new Big("0.1"); var b = new Big("0.2"); a.plus(b).mul(b).toString();
bignumber.js
var a = new BigNumber("0.1"); var b = new BigNumber("0.2"); a.plus(b).multipliedBy(b).toString();
bigdecimal.js
var a = new BigDecimal("0.1"); var b = new BigDecimal("0.2"); a.add(b).multiply(b).toString();
Fraction.js
var a = new Fraction("0.1"); var b = new Fraction("0.2"); a.add(b).mul(b).toString();