什么是深拷贝,什么是浅拷贝?如何利用js实现深拷贝?下面web建站小编给大家详细介绍一下!
深拷贝:在堆内存中重新开辟一个存储空间,完全克隆一个一模一样的对象。
浅拷贝:不在堆内存中重新开辟空间,只复制栈内存中的引用地址。
深拷贝示列:
function deepClone(obj){
let objClone = Array.isArray(obj)?[]:{};
if(obj && typeof obj==="object"){
for(key in obj){
if(obj.hasOwnProperty(key)){
//判断ojb子元素是否为对象,如果是,递归复制
if(obj[key]&&typeof obj[key] ==="object"){
objClone[key] = deepClone(obj[key]);
}else{
//如果不是,简单复制
objClone[key] = obj[key];
}
}
}
}
return objClone;
}
let a=[1,2,3,4],
b=deepClone(a);
a[0]=2;
console.log(a,b);
上面是“js如何实现深拷贝”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_3894.html
workflows工作流
森林里坐着一个外星人ComfyUI工作流
五彩斑斓的蛇状飞鸟
一幅骨架坐在公园的长椅上
一座精致透明的白瓷人物雕塑comfyui工作流
一支令人难忘的狙击步枪ComfyUI工作流
一个全脸彩绘和纹身的超级名模ComfyUI工作流
一块慕斯蛋糕ComfyUI工作流
一只漂亮的孔雀的尾巴完全由披萨制成ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

js实现下雪特效
做一个好玩的时钟翻牌效果
css3画弹珠,可以滚动!
数字滚动效果(兼容IE6/IE8)
利用CSS3做一个星级评分样式
利用CSS3代码编写45款按钮效果
利用html5+css3实现滚雪球效果(附代码)
3D立体人物效果







