forEach vs for vs for..in vs while

JavaScript performance comparison

Revision 3 of this test case created by Christophe

Preparation code

<script>
var j, array = []
for(j=0; j<= 5000; j++){
array[j]= j;
}
var _foreach=function(array,callback){
var len = array.length;
for(var i=0; i< len; i++) callback(array[i],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
for
var len = array.length, sum = 0;
for(var i=0; i< len; i++){
sum += array[i];
}
pending…
forEach
var sum = 0
array.forEach(function(v){
sum += v;
});
pending…
for in
var sum = 0;
for(var i in array){
sum += array[i];
}
pending…
for (2)
var i,len = array.length, sum = 0;
for(i=0;i++< len;){
sum += array[i];
}
pending…
while
var i=0,len = array.length, sum = 0;
while(i++< len){
sum += array[i];
}
pending…
for (3)
var sum = 0;
for(var i=0,len = array.length; i< len; i++){
sum += array[i];
}
pending…
for with foreach function
var sum = 0;
_foreach(array,function(v){ sum += v; });
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