Script Preparation code:
x
 
var testObj = {}
for (let i = 0; i < 10000; i++) {
  const randomString = Math.random().toString(36).substr(2, 5);
  testObj[randomString] = randomString;
}
Tests:
  • for in break

     
    let output;
    for (const key in testObj) {
      output = testObj[key];
      break;
    }
    console.log(output);
  • Object keys

     
    let output;
    output = Object.values(testObj)[0];
    console.log(output);
  • Object keys for real

     
    let output;
    output = testObj[Object.keys(testObj)[0]];
    console.log(output);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    for in break
    Object keys
    Object keys for real

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-A605FN) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.2 Chrome/87.0.4280.141 Mobile Safari/537.36
Chrome Mobile 87 on Android
View result in a separate tab
Test name Executions per second
for in break 220.8 Ops/sec
Object keys 65.1 Ops/sec
Object keys for real 255.9 Ops/sec