Angular foreach vs Underscore foreach vs native For Loop vs reverse native for loop (v38)

Revision 38 of this benchmark created by Alejandro Rangel on


Description

Angular 1.0.7 stable forEach vs Underscore.js each

Preparation HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>

 <script src="http://underscorejs.org/underscore-min.js"></script>

Setup

var sum = 0;
    var arr = [];
    var myFunc = function() {
      sum += 1;
    }
    for (var i = 0; i < 100000; i++) {
      arr.push(i)
    }

Test runner

Ready to run.

Testing in
TestOps/sec
angular foreach
angular.forEach(arr, myFunc);
ready
underscore foreach
_.each(arr, myFunc);
ready
for loop
for (var i = 0; i < arr.length; i++) {
  sum += 1;
};
ready
for loop reverse
for (var i = arr.length - 1; i >= 0; i--) {
  sum += 1;
};
ready
for loop with caching
for (var i = 0, len = arr.length; i < len; i++) {
  sum += 1;
};
ready
for loop using key
for(i in arr){
sum += 1;
}
ready
JavaScript forEach
arr.forEach(function(i){sum +=1;});
ready

Revisions

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