Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Reduce vs Map + FromEntries vs for loop vs map
Original benchmark was unfairly forcing the for loop to be slower through variable declaration and destructuring.
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:140.0) Gecko/20100101 Firefox/140.0
Browser:
Firefox 140
Operating system:
Mac OS X 10.15
Device Platform:
Desktop
Date tested:
one year ago
for loop
46K/s
map
20K/s
reduce
10K/s
map + fromEntries
6K/s
View exact numbers
Test name
Executions per second
✓
for loop
46,383 Ops/sec
map
19,955 Ops/sec
reduce
10,198 Ops/sec
map + fromEntries
6,480 Ops/sec
Script Preparation code:
const data = Array.from(Array(10000).keys()); const dataObject = Object.entries(data)
Tests:
reduce
dataObject.reduce((acc, [k, v]) => { acc[k] = v.toString(); return acc; }, {});
map + fromEntries
Object.fromEntries(dataObject.map(([k, v]) => ([k, v.toString()])));
for loop
const hashLookup = {} for (let i = 0; i < dataObject.length; i++) { hashLookup[i] = dataObject[i]; }
map
const hashLookup = {}; (dataObject ?? []).map((value, index) => hashLookup[index] = value);