Test name | Executions per second |
---|---|
Native | 99127320.0 Ops/sec |
Native + toFixed | 16131546.0 Ops/sec |
Big.js | 3591213.8 Ops/sec |
Fraction.js | 1802781.9 Ops/sec |
number-precision | 749636.1 Ops/sec |
<script src="https://cdn.jsdelivr.net/npm/big.js@6.2.2/big.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/fraction.js@5.2.1/dist/fraction.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/number-precision@1.6.0/build/index.iife.min.js"></script>
/*your preparation JavaScript code goes here
To execute async code during the script preparation, wrap it as function globalMeasureThatScriptPrepareFunction, example:*/
async function globalMeasureThatScriptPrepareFunction() {
// This function is optional, feel free to remove it.
// await someThing();
}
var a = 0.1;
var b = 0.2;
((a + b) * b).toString();
var a = 0.1;
var b = 0.2;
((a + b) * b).toFixed(9);
var a = new Big("0.1");
var b = new Big("0.2");
a.plus(b).mul(b).toString();
var a = new Fraction("0.1");
var b = new Fraction("0.2");
a.add(b).mul(b).toString();
var a = 0.1;
var b = 0.2;
NP.times(NP.plus(a, b), b).toString()