function shallowCopy(obj){
if(!obj || typeof obj !== 'object') return
let newObj = Array.isArray(obj)? [] : {}
for(let key in obj){
if(obj.hasOwnProperty(key)){
newObj[key] = obj[key]
}
}
return newObj
}
function deepCopy(obj){
if(!obj || typeof obj !== 'object') return
let newObj = Array.isArray(obj)? [] : {}
for(let key in obj){
if(obj.hasOwnProperty(key)){
newObj[key] = typeof obj[key] === 'object'? deepCopy(obj[key]) : obj[key]
}
}
return newObj
}
var obj1 = {
a:1,
b:{
c:2
}
}
let res1 = shallowCopy(obj1)
let res2 = deepCopy(obj1)
obj1.a = 2
obj1.b.c = 3
console.log(res1, 'res1')
console.log(res2, 'res2')
console