Javascript对象常见的深拷贝的方式
/*
方式一: 递归拷贝
*/
var clone = function(v) {
var o = v.constructor === Array ? [] : {};
for( var key in v) {
o[key] = typeof v[key] === 'Object' ? clone(v[key]) : v[key];
}
return o;
}
console.log(clone(
{
data:{
message: 'hello world'
}
}
));
/*
方式2,利用json对象转化为字符串的方法
*/
var clone2 = function(v) {
return (
JSON.parse(JSON.stringify(v))
);
}
console.log(clone2(
{
data:{
message: 'hello world'
}
}
));