Run details:
Mozilla/5.0 (Linux; Android 12; SM-N985F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.97 Mobile Safari/537.36 OPR/71.3.3718.67322
Opera Mobile 71
Android
Mobile
2 years ago
Test name Executions per second
Lodash cloneDeep 343204.0 Ops/sec
Native structuredClone 80068.4 Ops/sec
JSON.parse(JSON.stringify()) 203219.9 Ops/sec
HTML Preparation code:
AخA
 
1
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
x
 
var originalObject = {
  description: 'Creates a deep copy of source, which should be an object or an array.',
  myNumber: 123456789,
  myBoolean: true,
  jayson: {
    stringify: 'JSON.stringify() method converts a JavaScript value to a JSON string....',
    parse: 'JSON.parse() method parses a JSON string...'
  }
};
var copiedObject = null;
Tests:
  • Lodash cloneDeep

     
    copiedObject = _.cloneDeep(originalObject);
  • Native structuredClone

     
    copiedObject = structuredClone(originalObject);
  • JSON.parse(JSON.stringify())

     
    copiedObject = JSON.parse(JSON.stringify(originalObject));