Test case details

Preparation Code

<script>   var i, values = [],       sum = 0;   for (i = 0; i < 10000; i++) {     values[i] = i;   }   function add(val) {     sum += val;   } </script>

Test cases

Test #1

values.forEach(add);

Test #2

for (i = 0; i < values.length; i++) {   add(values[i]); }

Test #3

var len = values.length; for (i = 0; i < len; i++) {   add(values[i]); }

Test #4

for (i = values.length - 1; i >= 0; i--) {   add(values[i]); }

Test #5

(function() {   var sum = 0;   values.forEach(function(val) {     sum += val;   }); })();

Test #6

for (var i in values) {   add(values[i]); }

Test #7

for (var i = 0, len = values.length; i < len; i++) {   add(values[i]); }

Test #8

(function() {   var sum = 0;   values.forEach(function(element, index, array) {     sum += element;   }); })();