Script Preparation code:
AخA
 
var obj = {
  $names : ['a','b','c'],
  a:1,
  b:2,
  c:3
}
Tests:
  • getOwnPropertyNames

     
    var ks = Object.getOwnPropertyNames(obj);
    var n = 0;
    for (var i = 0; i < ks.length; i++) {
      var k = obj[ks[i]];
      if (k.charAt(0) == '$') continue;
      n++;
    }
  • Cached property names

     
    var ks = obj['$names'];
    var n = 0;
    for (var i = 0; i < ks.length; i++) {
      var k = obj[ks[i]];
      n++;
    }
  • for in

     
    var n = 0;
    for (var k in obj) {
      if (k.charAt(0) == '$') continue;
      n++;
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    getOwnPropertyNames
    Cached property names
    for in

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 8 years ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36
Chrome 53 on Mac OS X 10.10.5
View result in a separate tab
Test name Executions per second
getOwnPropertyNames 0.0 Ops/sec
Cached property names 2581982.0 Ops/sec
for in 4346397.5 Ops/sec