Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
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.forEach(mapObjectSpread);
literal
objs.forEach(mapObjectLiterally);
assign
objs.forEach(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 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Browser/OS:
Chrome 140 on Mac OS X 10.15.7
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
spread
9508.8 Ops/sec
literal
94118.6 Ops/sec
assign
4239.9 Ops/sec
Related benchmarks:
Object.assign-vs-Spread
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
spread vs manual
map spread vs manual vs assign
Comments
Confirm delete:
Do you really want to delete benchmark?