Script Preparation code:
Tests:

Historical Performance Data aggregated from 6 community runs

Desktop Results:
Chrome 6 runs
Object.values() + sort() + reduce
211K/s
Object.values() + sort() + for
210K/s
Object.values() + sort()
181K/s
for..in + Object.values() + sort()
100K/s
for..in + sort()
99K/s

Fastest: Object.values() + sort() + reduce (2.1x faster)

View exact numbers
  • Object.values() + sort() + reduce: 211,213 ops/sec
  • Object.values() + sort() + for: 209,538 ops/sec
  • Object.values() + sort() : 180,930 ops/sec
  • for..in + Object.values() + sort(): 100,201 ops/sec
  • for..in + sort(): 98,942 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
    for..in + sort()
    for..in + Object.values() + sort()
    Object.values() + sort() + for
    Object.values() + sort() + reduce
    Object.values() + sort()

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
Chrome 120 on Windows
View result in a separate tab
Object.values() + sort() + reduce
85K/s
Object.values() + sort() + for
83K/s
Object.values() + sort()
68K/s
for..in + Object.values() + sort()
39K/s
for..in + sort()
36K/s
View exact numbers
Test name Executions per second
Object.values() + sort() + reduce 84,801 Ops/sec
Object.values() + sort() + for 82,657 Ops/sec
Object.values() + sort() 68,447 Ops/sec
for..in + Object.values() + sort() 39,334 Ops/sec
for..in + sort() 35,813 Ops/sec