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:
9 months ago
Test name
Executions per second
reduce
10198.2 Ops/sec
map + fromEntries
6479.8 Ops/sec
for loop
46383.3 Ops/sec
map
19954.7 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);