Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
map spread vs manual vs assign
(version: 1)
Comparing performance of:
spread vs literal vs assign
Created:
9 months ago
by:
Guest
Jump to the latest result
HTML Preparation code:
<!--your preparation HTML code goes here-->
Script Preparation code:
function mapObjectSpread(obj) { return { ...obj, id: obj.objId }; } function mapObjectLiterally(obj) { return { objId: obj.objId, a: obj.a, b: obj.b, c: obj.c, id: obj.objId }; } function mapObjectAssign(obj) { return Object.assign({}, obj, { id: obj.objId }); } const objs = []; for (let i = 0; i < 10000; i++) { objs.push({ a: "a", b: "b", c: "c", objId: i }); }
Tests:
spread
objs.map(mapObjectSpread);
literal
objs.map(mapObjectLiterally);
assign
objs.map(mapObjectAssign);
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (3)
Previous results
Fork
Test case name
Result
spread
literal
assign
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
9 months ago
)
User agent:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Browser/OS:
Chrome 140 on Linux
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
spread
8700.0 Ops/sec
literal
18430.8 Ops/sec
assign
2941.7 Ops/sec
Related benchmarks:
JavaScript spread operator vs Object.assign performance 22
JavaScript spread operator vs Object.assign performance 224
JavaScript spread operator vs Object.assign performance 22476
isEmptyObject: keys vs for in
isEmptyObject: keys vs for in 2
isEmptyObject: keys vs for in 2.1
JavaScript spread operator vs Object.assign performance 22478
spread vs manual
spread vs manual vs assign
Comments
Confirm delete:
Do you really want to delete benchmark?