淺拷貝:Object.assign
var obj={name:'huahua', age:18, likes: {eat:true}}
var obj_q = Object.assign({},obj)
// obj_q={name:'huahua', age:18, likes: {eat:true}}
obj.name='haha'
//obj={name:'haha', age:18, likes: {eat:true}}
//obj_q={name:'huahua', age:18, likes: {eat:true}}
obj.likes.eat=false
//obj={name:'haha', age:18, likes: {eat:false}}
//obj_q={name:'huahua', age:18, likes: {eat:false}}
深拷貝:JSON.parse(JSON.stringify(object))
缺點:會忽略掉函數(shù)和 undefined
var obj={name:'huahua', age:18, likes: {eat:true}}
var obj_s=JSON.parse(JSON.stringify(obj))
//obj_s={name:'huahua', age:18, likes: {eat:true}}
obj.name='haha'
//obj={name:'haha', age:18, likes: {eat:true}}
//obj_s={name:'huahua', age:18, likes: {eat:true}}
obj.likes.eat=false
//obj={name:'haha', age:18, likes: {eat:false}}
//obj_s={name:'huahua', age:18, likes: {eat:true}}