JS深拷贝方法
一、对象深拷贝
const deepObj = (oldObj) => {
const newObj = {}
for (const key in oldObj) {
if (Object.hasOwnProperty.call(oldObj, key)) {
const val = oldObj[key];
newObj[key] = val
}
}
return newObj
}
二、数组对象深拷贝
const deepObj = (oldObj) => {
const newObj = {}
for (const key in oldObj) {
if (Object.hasOwnProperty.call(oldObj, key)) {
const val = oldObj[key];
newObj[key] = val
}
}
return newObj
}
const deepList = (oldList) => {
let newList = []
oldList.forEach(item => {
const newObj = deepObj(item)
newList.push(newObj)
})
return newList
}