Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
New Object from Reduce vs. ForEach
Tests the difference in creating new objects by using reduce vs building up an object in a forEach function
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36
Browser:
Chrome 123
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Populate object via ForEach
20213.4 Ops/sec
Populate object via Reduce
11.5 Ops/sec
Script Preparation code:
var objects = Array.from(new Array(1000)).map((r, i) => ({ id: `id-${i}`, val: i })); // Output should be // { "id-0": 0, "id-1": 1, ... }
Tests:
Populate object via ForEach
var newMapFE = {}; objects.forEach(o => { newMapFE[o.id] = o.val })
Populate object via Reduce
objects.reduce((acc, item) => ({...acc, [item.id]: item.val}), {});