通过递归方式实现深拷贝
function deepClone(obj){
var target = {};
for(var key in obj){
//JavaScript中Object对象原型上的hasOwnProperty()用来判断一个属性是定义在对象本身而不是继承自原型链。
if(Object.prototype.hashOwnProperty.call(obj,key)){
if(typeof obj[key] === 'object'){
target[key] = deepClone(obj[key]);
} else {
target[key] = obj[key];
}
}
}
return target;
}
通过json的方式实现
function (obj) {
let tmp = JSON.stringify(obj);
//JSON.parse() 方法用于将一个 JSON 字符串转换为对象。
let result = JSON.parse(tmp);
return result;
}