手写一个深拷贝

发布时间 2023-04-12 09:21:02作者: 四品带砖侍卫
function deepClone(obj) {
     if(typeof obj !='object') return object
    // 1、建立新容器 var temp = array.isArray(obj)?[]:{}
    // 2、 通过遍历将原有数组的值循环出来放到新建立的容器上 for (let key in obj) { if(obj.hasOwnProperty(key)) {
        // 如果是对象或数组类型,通过递归,返回对象,如果是基本数据类型则直接返回   if(obj[key] && typeof obj[key] == 'object') { temp[key]=deepClone(objj[key]) }else { temp[key]=obj[key] } } } return temp }