js深拷贝和浅拷贝

浅拷贝方法:

function qianCopy(obj) {
if (typeof obj !== 'object') {
return;
}
const tempObj = obj instanceof Array ? [] : {};
for(let key in obj) {
if (obj.hasOwnProperty(key)) {
tempObj[key] = obj[key];
}
}
return tempObj;
}

深拷贝方法:

function deepCopy(obj) {
if (typeof obj !== 'object') {
return;
}
const tempObj = obj instanceof Array ? [] : {};
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
tempObj[key] = typeof obj[key] === 'object' ? deepCopy(obj[key]) : obj[key];
}
}
return tempObj;
}

原文地址:https://www.cnblogs.com/ouyang2014/p/10496649.html