Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
lodash merge vs object.assign vs spread with deep values
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/131.0.0.0 Safari/537.36
Browser:
Chrome 131
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
lodash merge
2524546.5 Ops/sec
object.assign
14410923.0 Ops/sec
spread
13220150.0 Ops/sec
HTML Preparation code:
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Tests:
lodash merge
var a = { a: 'oh', b: 'my', deep: {a:'a',b:'b'} }; var b = { c: 'goddess' , deep: {c: 'c', b: 'b2'}}; var c = _.merge(a, b);
object.assign
var a = { a: 'oh', b: 'my', deep: {a:'a',b:'b'} }; var b = { c: 'goddess' , deep: {c: 'c', b: 'b2'}}; var c = Object.assign(a, b, {deep: Object.assign(a.deep, b.deep)});
spread
var a = { a: 'oh', b: 'my', deep: {a:'a',b:'b'} }; var b = { c: 'goddess' , deep: {c: 'c', b: 'b2'}}; var c = { ...a, ...b, deep:{...a.deep, ...b.deep} };