Javascript深拷贝
2021-06-04 21:03
标签:javascrip console 实现 var null 类型 style 一个 ber 为了实现一个函数clone,可以对JavaScript中5种主要的数据类型 (包括Number、String、Object、Array、Boolean)进行值(深)复制。 Javascript深拷贝 标签:javascrip console 实现 var null 类型 style 一个 ber 原文地址:https://www.cnblogs.com/wtsx-2019/p/14639691.html/**
*复制一份数据
*@paramobj
*return复制结果
***/
function clone(obj){
var buf;
if(obj instanceof Array){
var i=obj.length;
buf=[];//向空的数组中复制内容
while(i--){
buf[i]=clone(obj[i])
}
return buf;
}else if(obj instanceof Object){
buf={};//向空的对象中复制内容
for(var i in obj){
buf[i]=clone(obj[i])
}
return buf;
}else{//值类型直接返回
return buf=obj;
}
}
var arr=[1,{a:100},null];
var obj={a:100,b:true,c:{d:"hello"}};
var num=200;
console.log(clone(arr))
console.log(clone(obj))
console.log(clone(num))
上一篇:数组去重