2021-05-28
作者:互联网
递归深复制对象
<script>
var obj = { // 定义要进行深复制的对象
name: "张三",
age: 14,
tel: 110,
info: {
isSingle: true
}
}
// 定义深复制的函数
function deepClone(params) {
var obj = {}
if(!(params instanceof Object)) return
for(let key in params) {
if(params[key] instanceof Object) {
obj[key] = deepClone(params[key])
} else {
obj[key] = params[key]
}
}
return obj
}
// 验证结论
var obj2 = deepClone(obj)
obj2.name = '李四'
obj2.info.isSingle = false
console.log(obj, obj2)
</script>
————————————————
版权声明:本文为CSDN博主「俗」的原创文章,遵循CC 4.0 BY-SA版权协议,
转载请附上原文出处链接及本声明。
标签:obj2,obj,05,28,deepClone,params,2021,key,var 来源: https://blog.csdn.net/weixin_55876727/article/details/117368409