Script Preparation code:
x
 
   var arr = [];
   for (var i = 0; i < 1000; i++) {
       arr[i] = {
           'id': i
       };
   }
   function someFn(i) {
       return i * 3 * 8;
   }
Tests:
  • foreach

     
    arr.forEach(function (item){
      item.data = someFn(item.id);
    })
  • for

     
    for (var i = 0, len = arr.length; i < len; i++) {
      arr[i].data = someFn(arr[i].id);
    }
  • map

     
    arr.map(function(item){ item.data=someFn(item.id); });
  • filter

     
    arr.filter(function(item){ item.data=someFn(item.id); });
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    foreach
    for
    map
    filter

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 4 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.142 Safari/537.36
Chrome 81 on Windows
View result in a separate tab
Test name Executions per second
foreach 5817.9 Ops/sec
for 2177.7 Ops/sec
map 5872.2 Ops/sec
filter 5705.6 Ops/sec