Loop vs map vs forEach

JavaScript performance comparison

Revision 52 of this test case created by David Tennant

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  var range = [];
  var ids = [];
  var string = "";
  
  for (var i = 0; i < 10000; i++) {
      range.push(i);
      ids.push("id_"+i);
  }
  
  

};
</script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
Loop
var result = [];

for (var i = 0; i < range.length; i++) {
    result.push(range[i] * 2);
    string += ids.shift();
}

console.log(string);
pending…
forEach
var result = [];

range.forEach(function(val) {
    result.push(val * 2);
});

console.log(string);
pending…
Map
var result = range.map(function(val,index) { return string += ids[index];val * 2; });

console.log(string);
pending…

Compare results of other browsers

Revisions

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

0 Comments