其他分享
首页 > 其他分享> > 2021-05-28

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