Calculating mean: filter+reduce vs forEach vs loop

JavaScript performance comparison

Revision 40 of this test case created by

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  var range = [];
  
  for (var i = 0; i < 10000; i++) {
      range.push(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
Filter+reduce
var filteredValues = range.filter(val => val % 2 === 0)
var result = filteredValues.reduce(function(sum, val) { return sum + val; }) / filteredValues.length;
pending…
Loop
var sum = 0;
var count = 0;

for (var i = 0; i < range.length; i++) {
    if (i % 2 === 0) {
        sum += i;
        count += 1;}
}
var result = sum / count;
pending…
forEach
var sum = 0;
var count 0;

range.forEach(function(val) {
    if (i % 2 === 0) {
        sum += i;
        count += 1;}
});
var result = sum / count;
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