Number vs. plus vs. parseInt vs. parseFloat vs. /1 vs. *1 vs. 0+ vs. 1* (v23)

Revision 23 of this benchmark created on


Preparation HTML

<script>
"use asm";
var num1 = '123';
var num2 = '2.23';
var num3 = '-323';
var num4 = '-423.12';
var num5 = '52300012';
var num6 = '1.21234532623';
var num7 = '-7.1532464523';
var num8 = '0';
var num9 = '1254785';
var num10 = '1023456';
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
Number
"use asm";
var i = Number(num1);
i = Number(num2);
i = Number(num3);
i = Number(num4);
i = Number(num5);
i = Number(num6);
i = Number(num7);
i = Number(num8);
i = Number(num9);
i = Number(num10);
ready
+
"use asm";
var i = +num1;
i = +num2;
i = +num3;
i = +num4;
i = +num5;
i = +num6;
i = +num7;
i = +num8;
i = +num9;
i = +num10;
ready
parseInt
"use asm";
var i = parseInt(num1, 10);
i = parseInt(num2, 10);
i = parseInt(num3, 10);
i = parseInt(num4, 10);
i = parseInt(num5, 10);
i = parseInt(num6, 10);
i = parseInt(num7, 10);
i = parseInt(num8, 10);
i = parseInt(num9, 10);
i = parseInt(num10, 10);
ready
parseFloat
"use asm";
var i = parseFloat(num1);
i = parseFloat(num2);
i = parseFloat(num3);
i = parseFloat(num4);
i = parseFloat(num5);
i = parseFloat(num6);
i = parseFloat(num7);
i = parseFloat(num8);
i = parseFloat(num9);
i = parseFloat(num10);
ready
parseInt (no extra parameter)
"use asm";
var i = parseInt(num1);
i = parseInt(num2);
i = parseInt(num3);
i = parseInt(num4);
i = parseInt(num5);
i = parseInt(num6);
i = parseInt(num7);
i = parseInt(num8);
i = parseInt(num9);
i = parseInt(num10);
ready
divide by 1
"use asm";
var i = num1 / 1;
i = num2 / 1;
i = num3 / 1;
i = num4 / 1;
i = num5 / 1;
i = num6 / 1;
i = num7 / 1;
i = num8 / 1;
i = num9 / 1;
i = num10 / 1;
ready
multiply by 1
"use asm";
var i = num1 * 1;
i = num2 * 1;
i = num3 * 1;
i = num4 * 1;
i = num5 * 1;
i = num6 * 1;
i = num7 * 1;
i = num8 * 1;
i = num9 * 1;
i = num10 * 1;
ready
1*
"use asm";
var i = 1 * num1;
i = 1 * num2;
i = 1 * num3;
i = 1 * num4;
i = 1 * num5;
i = 1 * num6;
i = 1 * num7;
i = 1 * num8;
i = 1 * num9;
i = 1 * num10;
ready
~~
"use asm";
var i = ~~num1;
i = ~~num2;
i = ~~num3;
i = ~~num4;
i = ~~num5;
i = ~~num6;
i = ~~num7;
i = ~~num8;
i = ~~num9;
i = ~~num10;
ready
|0
"use asm";
var i = num1|0;
i = num2|0;
i = num3|0;
i = num4|0;
i = num5|0;
i = num6|0;
i = num7|0;
i = num8|0;
i = num9|0;
i = num10|0;
ready
-0
"use asm";
"use asm";
var i = num1 - 0;
i = num2 - 0;
i = num3 - 0;
i = num4 - 0;
i = num5 - 0;
i = num6 - 0;
i = num7 - 0;
i = num8 - 0;
i = num9 - 0;
i = num10 - 0;
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.