Script Preparation code:
Tests:

Historical Performance Data aggregated from 128 community runs

Desktop Results:
Chrome 100 runs
Map - for of kv
6.9M/s
Map - forEach
4.2M/s
Object.entries() - for of kv
1.3M/s
Object - for in
707K/s
Object.entries() - forEach
251K/s

Fastest: Map - for of kv (27.5x faster)

View exact numbers
  • Map - for of kv: 6,880,140 ops/sec
  • Map - forEach: 4,224,913 ops/sec
  • Object.entries() - for of kv: 1,271,885 ops/sec
  • Object - for in: 706,525 ops/sec
  • Object.entries() - forEach: 250,568 ops/sec
Firefox 19 runs
Object - for in
6.5M/s
Map - forEach
4.2M/s
Map - for of kv
1.6M/s
Object.entries() - for of kv
1.2M/s
Object.entries() - forEach
141K/s

Fastest: Object - for in (45.7x faster)

View exact numbers
  • Object - for in: 6,469,104 ops/sec
  • Map - forEach: 4,175,476 ops/sec
  • Map - for of kv: 1,611,924 ops/sec
  • Object.entries() - for of kv: 1,222,477 ops/sec
  • Object.entries() - forEach: 141,455 ops/sec
Mobile Results:
Chrome 9 runs
Map - for of kv
3.0M/s
Map - forEach
1.7M/s
Object.entries() - for of kv
594K/s
Object - for in
343K/s
Object.entries() - forEach
102K/s

Fastest: Map - for of kv (29.5x faster)

View exact numbers
  • Map - for of kv: 3,020,599 ops/sec
  • Map - forEach: 1,738,110 ops/sec
  • Object.entries() - for of kv: 593,839 ops/sec
  • Object - for in: 342,902 ops/sec
  • Object.entries() - forEach: 102,372 ops/sec

Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.

Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results
  • Test case name Result
    Map - for of kv
    Map - forEach
    Object.entries() - for of kv
    Object.entries() - forEach
    Object - for in

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one year ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
Chrome 138 on Mac OS X 10.15.7
View result in a separate tab
Map - for of kv
11.1M/s
Object - for in
8.7M/s
Map - forEach
7.3M/s
Object.entries() - for of kv
2.0M/s
Object.entries() - forEach
354K/s
View exact numbers
Test name Executions per second
Map - for of kv 11,087,638 Ops/sec
Object - for in 8,745,834 Ops/sec
Map - forEach 7,329,178 Ops/sec
Object.entries() - for of kv 1,965,132 Ops/sec
Object.entries() - forEach 353,826 Ops/sec