其他分享
首页 > 其他分享> > 递归实现深拷贝

递归实现深拷贝

作者:互联网

文章目录


一、递归实现深拷贝

function copyData(obj) {
	if (!obj|| typeof obj !== 'object') {
		return false
	}
	let newObj = obj instanceof Array?[]:{}
	// 用for in 循环对象  但他会枚举到原型的属性
	for (let key in obj) {
		// hasOwnProperty过滤掉原型上的属性
		if (obj.hasOwnProperty(key)) {
			newObj[key] = 
			typeof obj[key] === 'object' ? copyData(obj[key]):obj[key]
		}
	}
	return newObj
}

标签:obj,递归,实现,newObj,key,copyData,拷贝
来源: https://blog.csdn.net/weixin_43456275/article/details/121213758