function DeepClone (obj) {
if (obj === null || typeof obj !== 'object') return obj;
var cpObj = obj instanceof Array ? [] : {};
for (var key in obj) cpObj[key] = DeepClone(obj[key]);
return cpObj;
}
var obj = {
id: 1,
name: 'xxx',
sayName: function (a) {
console.log('my name is ' + a);
},
childs: [
{'a': 1},
{'c': 'd'},
],
opts: {
xxx: [1,2,'3'],
aa: 'bb'
},
};
var newObj = DeepClone(obj);
console.log(obj)
console.log(newObj)
obj.sayName('hah')
深拷贝函数JS
最新推荐文章于 2023-05-08 17:19:56 发布