深拷贝函数–递归
//标准的深拷贝 引用数据类型
const deepClone = (source)=>{
	// [] => Array()  {} => Object
	const targetObj = source.constructor === Array ? [] : {};
	for(let keys in source){
		if(source.hasOwnProperty(keys)){
			//引用数据类型
			if(source[keys] && typeof source[keys] === 'object'){
				//维护层代码
				targetObj[keys] = source[keys].constructor === Array ? [] : {};
				//递归
				targetObj[keys] = deepClone(source[keys])
			}else{
				//基本数据类型,直接赋值
				targetObj[keys] = source[keys]
			}
		}
	}
  return targetObj;
}
                
                  
                  
                  
                  
该文章介绍了如何使用JavaScript编写一个深拷贝函数,通过递归处理来复制包括引用数据类型在内的复杂对象。函数首先判断源对象的数据类型,然后对每个属性进行检查,如果属性是对象则进行递归拷贝,否则直接赋值。
          
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					890
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            