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

Revision 13 of this benchmark created on


Preparation HTML

<script>
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
Number(num1);
Number(num2);
Number(num3);
Number(num4);
Number(num5);
Number(num6);
Number(num7);
Number(num8);
Number(num9);
Number(num10);
ready
+
+num1;
+num2;
+num3;
+num4;
+num5;
+num6;
+num7;
+num8;
+num9;
+num10;
ready
parseInt
parseInt(num1, 10);
parseInt(num2, 10);
parseInt(num3, 10);
parseInt(num4, 10);
parseInt(num5, 10);
parseInt(num6, 10);
parseInt(num7, 10);
parseInt(num8, 10);
parseInt(num9, 10);
parseInt(num10, 10);
ready
parseFloat
parseFloat(num1);
parseFloat(num2);
parseFloat(num3);
parseFloat(num4);
parseFloat(num5);
parseFloat(num6);
parseFloat(num7);
parseFloat(num8);
parseFloat(num9);
parseFloat(num10);
ready
parseInt (no extra parameter)
parseInt(num1);
parseInt(num2);
parseInt(num3);
parseInt(num4);
parseInt(num5);
parseInt(num6);
parseInt(num7);
parseInt(num8);
parseInt(num9);
parseInt(num10);
ready
divide by 1
num1 / 1;
num2 / 1;
num3 / 1;
num4 / 1;
num5 / 1;
num6 / 1;
num7 / 1;
num8 / 1;
num9 / 1;
num10 / 1;
ready
multiply by 1
num1 * 1;
num2 * 1;
num3 * 1;
num4 * 1;
num5 * 1;
num6 * 1;
num7 * 1;
num8 * 1;
num9 * 1;
num10 * 1;
ready
1*
1 * num1;
1 * num2;
1 * num3;
1 * num4;
1 * num5;
1 * num6;
1 * num7;
1 * num8;
1 * num9;
1 * num10;
ready
~~
~~num1;
~~num2;
~~num3;
~~num4;
~~num5;
~~num6;
~~num7;
~~num8;
~~num9;
~~num10;
ready
|0
num1|0;
num2|0;
num3|0;
num4|0;
num5|0;
num6|0;
num7|0;
num8|0;
num9|0;
num10|0;
ready
-0
num1 - 0;
num2 - 0;
num3 - 0;
num4 - 0;
num5 - 0;
num6 - 0;
num7 - 0;
num8 - 0;
num9 - 0;
num10 - 0;
ready

Revisions

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