Test case details

Preparation Code

<script>   var data = {};     for (var i = 0; i < 100; i++) {      data[i] =  { foo: 'bar ' + i, bar: null };     } </script>

Test cases

Test #1

for (var key in data) {   data[key]; }

Test #2

var ownProp = Object.prototype.hasOwnProperty; for (var key in data) {   if (ownProp.call(data, key)) {     data[key];   } }

Test #3

for (var key in data) {   data[key]; }

Test #4

var keys = Object.keys(data); for (var i = 0, len = keys.length; i < len; ++i) {   data[keys[i]]; }

Test #5

var keys = Object.keys(data); for (var i = keys.length - 1; i >= 0; i--) {   data[keys[i]]; }

Test #6

var keys = Object.keys(data); for (var i = keys.length - 1; i >= 0; --i) {   data[keys[i]]; }

Test #7

var keys = Object.keys(data); for (var i = 0, len = keys.length; i < len; i++) {   data[keys[i]]; }