赞
踩
let obj = {
a: 1,
b: {
c: 2,
}
}
不会拷贝对象继承的属性、
不可枚举的属性、
属性的数据属性/访问器属性、
可以拷贝Symbol类型
用法:...object
arrayObject.slice(start,end)
arrayObject.concat(arrayX,...,arrayX)
function deepClone(source) {
if (!source || typeof source !== 'object') {
return source;
}
const targetObj = source.constructor === Array ? [] : {};
for (const keys in source) {
if (source.hasOwnProperty(keys)) {
targetObj[keys] = source[keys];
}
}
return targetObj;
}
function deepClone(source) {
if (!source || typeof source !== 'object') {
return source;
}
const targetObj = source.constructor === Array ? [] : {};
for (const 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;
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。