Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
flatten merge array: reduce VS Object.assign
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/122.0.0.0 Safari/537.36
Browser:
Chrome 122
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Reduce
682735.9 Ops/sec
Object.assign
926961.9 Ops/sec
Script Preparation code:
function createArray(k, propsCount) { const arr = [] for (let i = 0; i < propsCount; i += 1) { arr.push({ id: k * i, active: i % 5 === 0 }) } return arr.reduce((obj, u) => ({[u.id]: u}), {}) } var pages = [createArray(0, 1000),createArray(10,1000),createArray(100,1000)]
Tests:
Reduce
allusers = pages.reduce((store, page) => ({...store, ...page}), {})
Object.assign
allUsers = Object.assign({}, ...pages.flat())