JavaScript bitwise NOT vs Math.floor() (v7)

Revision 7 of this benchmark created on


Setup

var numbers = [];
  
  //generate amount random numbers
  for (var i = 0; i < 100000; i++) {
    numbers[numbers.length] = Math.floor(Math.random()*100000)/10000;
  }

Test runner

Ready to run.

Testing in
TestOps/sec
Math.floor()
var test;
for (var i = 0; i < 100000; i++) {
  test = Math.floor(numbers[i]);
}
ready
bitwise NOT
var test;
for (var i = 0; i < 100000; i++) {
  test = ~~ (numbers[i]);
}
ready
<<0
var test;
for (var i = 0; i < 100000; i++) {
  test = (numbers[i]) <<0;
}
ready
| 0
var test;
for (var i = 0; i < 100000; i++) {
  test = numbers[i] | 0;
}
ready

Revisions

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