Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Object spread vs new Map vs Object assign with complex data
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/120.0.0.0 Safari/537.36
Browser:
Chrome 120
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Object spread
17375.6 Ops/sec
new Map
89877.1 Ops/sec
Object assign
17048.5 Ops/sec
Script Preparation code:
var data = new Array(1000000).fill(undefined).map((_,i) => i) var obj = data.reduce((obj, idx) => {obj['idx' + Date.now()] = {name: 'Name: ' + Date.now(), age: idx}; return obj}, {}); var map = new Map(Object.entries(obj));
Tests:
Object spread
var copy = {...obj}
new Map
var copy = new Map(map)
Object assign
var copy = Object.assign({}, obj)