Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Compare deep clone object performance
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
Browser:
Chrome 136
Operating system:
Windows
Device Platform:
Desktop
Date tested:
11 months ago
Test name
Executions per second
recursiveDeepCopy
19114720.0 Ops/sec
jsonDeepCopy
256072.9 Ops/sec
Script Preparation code:
var testObj = { "content": [ { "columnGap": 10, "columns": [ { "svg": "\n <svg><path/></svg>", "width": 100 }, { "style": "reportMainHeading", "text": "Azure-Central-US", "width": "*" } ] }, { "canvas": [ { "lineColor": "#CCCCCC", "lineWidth": 3, "type": "line" } ], "margin": [0, 10] } ] }; var recursiveDeepCopy = (obj) => { return Object.keys(obj).reduce( (acc, key) => Object.assign(acc, { [key]: typeof obj[key] === 'object' && obj[key].constructor === Object ? getDeepCloneObj(obj[key]) : obj[key] }), {} ); }; var jsonDeepCopy = (obj) => { return JSON.parse(JSON.stringify(obj)); }
Tests:
recursiveDeepCopy
recursiveDeepCopy(testObj);
jsonDeepCopy
jsonDeepCopy(testObj);