JavaScript&&对象&&复制&&克隆

JavaScript&&对象&&复制、克隆

对象的浅复制

const obj = { a: 1, b: 2 }
const shallowClone = { ...obj }

对象的深度克隆

function deepClone(obj){
    if(typeof obj !== 'object') return obj;
    var _obj = Array.isArray(obj)? []:{};
    if (typeof obj === 'object'){
	for(attr in obj){
	    if(typeof obj[attr] === 'object'){
		_obj[attr] = deepClone(obj[attr]);
	    }else{
		_obj[attr] = obj[attr];
	    }
	}
    return _obj;	
    }
}

let obj_f = deepClone(obj);
console.log(obj_f);

参考资料:
https://www.csdn.net/gather_2a/OtDaUg5sNzM3LWJsb2cO0O0O.html
https://www.cnblogs.com/hahazexia/p/10271701.html

发布了61 篇原创文章 · 获赞 4 · 访问量 8708

猜你喜欢

转载自blog.csdn.net/dfq737211338/article/details/104040483