how to make deep clone in javascript code example
Example 1: javascript deep clone
var cloned = JSON.parse(JSON.stringify(objectToClone));
Example 2: js clone deep
// only works with pure JSON data (bool, numbers, strings, arrays, nested
// objects; No functions).
var obj2 = JSON.parse(JSON.stringify(obj));
// works with everything, requires lodash library, faster than previous answer
var obj2 = _.cloneDeep(obj, true);
// shallow copy
var obj2 = Object.assign({}, obj);
Example 3: deep copy js
//recursive deep copy of object
function dup(o) {
// "string", number, boolean
if(typeof(o) != "object") {
return o;
}
// null
if(!o) {
return o; // null
}
var r = (o instanceof Array) ? [] : {};
for(var i in o) {
if(o.hasOwnProperty(i)) {
r[i] = dup(o[i]);
}
}
return r;
}