浅拷贝
function shallowCopy(oldObj) {
var newObj = {};
for (var i in oldObj) {
if (oldObj.hasOwnProperty(i)) {
newObj[i] = oldObj[i];
}
}
return newObj;
}
深拷贝
深拷贝的递归方法
function deepCopy(oldObj) {
var newObj = {};
for (var key in oldObj) {
if (typeof oldObj[key] === 'object' && typeof oldObj[key] !== null) {
newObj[key] = deepCopy(oldObj[key]);
} else {
newObj[key] = oldObj[key];
}
}
return newObj;
}
深拷贝的JSON方法
newObj = JSON.parse(JSON.stringify(oldObj));
网友评论