深拷贝手写

        let arr = ["张三", "李四", "王五",[1,2,3,4,5]];

        function deepCopy(obj1) {
            let obj2 = Array.isArray(obj1) ? [] : {};
            for (let key in obj1) {
        // hasOwnProperty : 自身属性 会返还 true ,否则会返还false
if(obj1.hasOwnProperty(key)){ if(typeof obj1[key] === 'object'){ obj2[key] = deepCopy(obj1[key]); }else{ obj2[key] = obj1[key]; } } } return obj2; } let arr2 = deepCopy(arr); console.log(arr,arr2);

 

posted @ 2023-05-23 20:56  学习让我充实  阅读(12)  评论(0)    收藏  举报