loopvsmap (v3)

Revision 3 of this benchmark created on


Setup

var a = [];
    for (var i = 0; i < 1001; i++) {
      a.push(Math.round(Math.random() * 1000));
    }
    
    function square(value) {
      return value * value;
    }

Test runner

Ready to run.

Testing in
TestOps/sec
map
a.map(square);
ready
loop
var b = [];
for (var ind in a) {
  if (a.hasOwnProperty(ind)) {
    b.push(square(a[ind]));
  }
}
ready
loop2
var b = [];
for (var i = 0; i < a.length; i++) {

  b.push(square(a[i]));
}
ready
loop3
var b = [];
for (var i = 0, j = a.length; i < j; i++) {
  b.push(square(a[i]));
}
ready

Revisions

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