Test case details

Preparation Code

<script> // Populate the base array var arr = []; for (var i = 0; i < 1000; i++) { arr[i] = i; } </script>

Test cases

Test #1

for (var i = 0; i < arr.length; i++) { var num = 1 + 1; }

Test #2

var i = 0; while (i < arr.length) { var num = 1 + 1; i++; }

Test #3

for (var i = 0, len = arr.length; i < len; i++) { var num = 1 + 1; }

Test #4

for (var i = arr.length; i > 0; i--) { var num = 1 + 1; }

Test #5

var i = arr.length - 1; do { var num = 1 + 1; } while (i--);

Test #6

var i = arr.length; if (i > 0) { do { var num = 1 + 1; } while (--i); }

Test #7

for (var i in arr) { var num = 1 + 1; }

Test #8

while( i = arr.shift() ) { var num = 1 + 1; }

Test #9

arr.forEach(function (v){ var num = 1 + 1; });

Test #10

while( (i = arr.shift()) !== undefined ) { var num = 1 + 1; }

Test #11

var a; while((a = arr[i++]) !== undefined) { var num = 1 + 1; }

Test #12

while( i = arr.pop() ) { var num = 1 + 1; }

Test #13

var copy = arr.slice(0); while( i = copy.shift() ) { var num = 1 + 1; }

Test #14

var l = arr.length; while(l--) { var num = 1 + 1; }

Test #15

var len = arr.length; for (var i = 0, x = arr[i]; i < len; ++i) { var num = 1 + 1; }

Test #16

// Source: http://stackoverflow.com/a/7252102/456584 for (var i = 0, len = arr.length; i < len; i++) { var num = 1 + 1; }

Test #17

var len = arr.length; for (var i = 0; i < len; ++i) { var num = 1 + 1; }

Test #18

var len = arr.length; for (var i = 0; i !== len; ++i) { var num = 1 + 1; }