vue 拷贝 数组_Vue实现对数组、对象的深拷贝、复制
浅拷贝:复制引用地址 ; 深拷贝:复制对象方法一JSON.parse(JSON.stringify())示例:computed: {data: function () {var obj={};obj=JSON.parse(JSON.stringify(this.templateData)); //this.templateData是父组件传递的对象return obj}}方法二const clon
浅拷贝:复制引用地址 ; 深拷贝:复制对象
方法一
JSON.parse(JSON.stringify())
示例:
computed: {
data: function () {
var obj={};
obj=JSON.parse(JSON.stringify(this.templateData)); //this.templateData是父组件传递的对象
return obj
}
}
方法二
const clone = (obj) => {
var o;
// 如果 他是对象object的话 , 因为null,object,array 也是'object';
if (typeof obj === 'object') {
// 如果 他是空的话
if (obj === null) {
o = null;
}
else {
// 如果 他是数组arr的话
if (obj instanceof Array) {
o = [];
for (var i = 0, len = obj.length; i < len; i++) {
o.push(clone(obj[ i ]));
}
}
// 如果 他是对象object的话
else {
o = {};
for (var j in obj) {
o[ j ] = clone(obj[ j ]);
}
}
}
}
else {
o = obj;
}
return o;
};
export default clone;
更多推荐
所有评论(0)