HTML Preparation code:
x
 
1
2
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
3
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.25.0/ramda.min.js"></script>
4
<script src="https://cdnjs.cloudflare.com/ajax/libs/clone/2.1.2/clone.min.js"></script>
Script Preparation code:
 
var MyObject = {
  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 myCopy = null;
Tests:
  • Lodash cloneDeep

     
    myCopy = _.cloneDeep(MyObject);
  • Json clone

     
    myCopy = JSON.parse(JSON.stringify(MyObject));
  • Ramda clone

     
    myCopy = R.clone(MyObject);
  • Pvorb Clone

     
    myCopy = clone(MyObject, false);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Lodash cloneDeep
    Json clone
    Ramda clone
    Pvorb Clone

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 years ago)
Mozilla/5.0 (iPhone; CPU iPhone OS 16_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.1 Mobile/15E148 Safari/604.1
Mobile Safari 16 on iOS 16.1.1
View result in a separate tab
Test name Executions per second
Lodash cloneDeep 1240338.6 Ops/sec
Json clone 1064943.1 Ops/sec
Ramda clone 1106685.6 Ops/sec
Pvorb Clone 1347483.2 Ops/sec