Script Preparation code:
Tests:

Historical Performance Data aggregated from 11 community runs

Desktop Results:
Chrome 6 runs
Reduce (reuse object)
2K/s
forEach
2K/s
Map
1K/s
Object.fromEntries
186/s
Object.assign
156/s
Reduce (creating temporary objects)
54/s

Fastest: Reduce (reuse object) (35.6x faster)

View exact numbers
  • Reduce (reuse object): 1,925 ops/sec
  • forEach: 1,855 ops/sec
  • Map: 1,211 ops/sec
  • Object.fromEntries: 186 ops/sec
  • Object.assign: 156 ops/sec
  • Reduce (creating temporary objects): 54 ops/sec
Firefox 5 runs
forEach
1K/s
Reduce (reuse object)
1K/s
Map
403/s
Object.fromEntries
177/s
Object.assign
155/s
Reduce (creating temporary objects)
0/s

Fastest: forEach (7657.9x faster)

View exact numbers
  • forEach: 1,489 ops/sec
  • Reduce (reuse object): 1,180 ops/sec
  • Map: 403 ops/sec
  • Object.fromEntries: 177 ops/sec
  • Object.assign: 155 ops/sec
  • Reduce (creating temporary objects): 0 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
    Object.fromEntries
    Reduce (reuse object)
    Reduce (creating temporary objects)
    Map
    forEach
    Object.assign

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 months ago)
Mozilla/5.0 (X11; Linux x86_64; rv:150.0) Gecko/20100101 Firefox/150.0
Firefox 150 on Linux
View result in a separate tab
forEach
3K/s
Reduce (reuse object)
3K/s
Map
1K/s
Object.fromEntries
383/s
Object.assign
373/s
Reduce (creating temporary objects)
0/s
View exact numbers
Test name Executions per second
forEach 3,417 Ops/sec
Reduce (reuse object) 2,842 Ops/sec
Map 1,008 Ops/sec
Object.fromEntries 383 Ops/sec
Object.assign 373 Ops/sec
Reduce (creating temporary objects) 0 Ops/sec