用Object.assign()复制数组对象

This commit is contained in:
马云海 mayunhai () 2019-02-18 13:06:39 +08:00
parent 6c8fda9244
commit ce7cb2f17f
1 changed files with 1 additions and 8 deletions

View File

@ -276,14 +276,7 @@ export function deepClone(source) {
if (!source && typeof source !== 'object') {
throw new Error('error arguments', 'shallowClone')
}
const targetObj = source.constructor === Array ? [] : {}
Object.keys(source).forEach(keys => {
if (source[keys] && typeof source[keys] === 'object') {
targetObj[keys] = deepClone(source[keys])
} else {
targetObj[keys] = source[keys]
}
})
const targetObj = source.constructor === Array ? Object.assign([], source) : Object.assign({}, source)
return targetObj
}