前端深拷贝

// 深度克隆
封装方法,判断是什么类型,做不同的处理

deepClone(o) {
if (
typeof o === “string” ||
typeof o === “number” ||
typeof o === “boolean” ||
typeof o === “undefined”
) {
return o;
} else if (Array.isArray(o)) {
// 如果是数组,则定义一个新数组,完成复制后返回
// 注意,这里判断数组不能用typeof,因为typeof Array 返回的是object
var _arr = [] as any;
o.forEach((item) => {
_arr.push(item);
});
return _arr;
} else if (typeof o === “object”) {
var _o = {};
for (let key in o) {
_o[key] = this.deepClone(o[key]);
}
return _o;
} }

你可能感兴趣的:(vue,前端,javascript,大数据)