深拷贝js对象或数组

有以下几种情况:

(1)简单对象,例如:

let obj = {name:'xiaohong',age:13}

深拷贝方法:

1.let obj1 = Object.assign({},obj)

2. let obj1 = JSON.stringify(obj)
    obj1 = JSON.parse(obj1)
(2)复杂对象,例如:
 let obj = {school:{name:'xiaohong'},age:13}
上面两种方法都不可用了,可使用下面的方法去深度拷贝

/* 深拷贝 对象 数组*/
deepCopy (source) {
var sourceCopy = source instanceof Array ? [] : {};
for (var item in source) {
sourceCopy[item] = typeof source[item] === 'object' ? this.deepCopy(source[item]) : source[item];
}
return sourceCopy;
}
原文地址:https://www.cnblogs.com/yeduweichengzhaoyu/p/11906775.html