js数据克隆方法
2023-03-22 本文已影响0人
zhao_madman
1.JSON.parse(JSON.stringify(obj));
const copyobj = JSON.parse(JSON.stringify(obj)); // 函数不能clone
2....运算符
const copyobj = { ...obj }; // 只能clone 第一层
3.structuredClone方法
const copyobj = window.structuredClone(obj); // 函数不能clone
4.创建一个函数克隆所有元素
function clone(obj) {
var o;
if (typeof obj == "object") {
if (obj === null) {
o = null;
} else {
if (obj instanceof Array) {
o = [];
for (var i = 0, len = obj.length; i < len; i++) {
o.push(clone(obj[i]));
}
} else {
o = {};
for (var j in obj) {
o[j] = clone(obj[j]);
}
}
}
} else {
o = obj;
}
return o;
}