Test name | Executions per second |
---|---|
json stringify | 286890.1 Ops/sec |
lodash deep clone | 910621.8 Ops/sec |
Object.assign | 825806.9 Ops/sec |
Ramda clone | 352255.1 Ops/sec |
<script src="//cdnjs.cloudflare.com/ajax/libs/ramda/0.25.0/ramda.min.js"></script>
<script src='https://cdn.jsdelivr.net/npm/lodash@4.17.10/lodash.min.js'></script>
var obj = {a: "hello", c: "test", po: 33, arr: [1, 2, 3, 4], anotherObj: {a: 33, str: "whazzup"}};
var obj2 = JSON.parse(JSON.stringify(obj));
var obj = {a: "hello", c: "test", po: 33, arr: [1, 2, 3, 4], anotherObj: {a: 33, str: "whazzup"}};
var obj2 = _.clone(obj, true);
var obj = {a: "hello", c: "test", po: 33, arr: [1, 2, 3, 4], anotherObj: {a: 33, str: "whazzup"}};
var obj2 = Object.assign({}, obj);
var obj = {a: "hello", c: "test", po: 33, arr: [1, 2, 3, 4], anotherObj: {a: 33, str: "whazzup"}};
var obj2 = R.clone(obj, true);