当前位置:网站首页 > Vue.js开发 > 正文

js深拷贝和浅拷贝的方法(js深浅拷贝的区别)



首先来看一下如下代码

 
  

你会发现,同一个Array或者Object赋值给两个不同变量时,变量指向的是同一个内存地址,所以就会造成其中一个变量改变属性值,同时改变了另外一个变量的对应属性值。

而大多数实际项目中,我们想要的结果是两个变量(初始值相同)互不影响。所以就要使用到 拷贝(分为深浅两种)
浅拷贝只复制一层对象的属性,而深拷贝则递归复制了 所有层级。
浅拷贝有效性针对的是单一层级对象 [1,2,3]或者{a:1,b:2}
深拷贝有效性针对的是单层或者多层级对象 [1,2,3]或者{a:1,b:2}或者[1,[1],{a:1}]或者{a:[1],b:{c:2}}





  • 如何实现
 
  
  • 应用场景
    对于一层结构的Array和Object想要拷贝一个副本时使用
    vue的mixin是浅拷贝的一种复杂型式




  • 如何实现
 
  
  • 应用场景
    复制深层次的object数据结构

  • 对深拷贝的应用想法
    在实际工作中是不是用继承来实现更好?需要大家来讨论,提意见

到此这篇js深拷贝和浅拷贝的方法(js深浅拷贝的区别)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • libxml2使用手册(libxml-2.0)2026-03-11 07:00:10
  • js深拷贝的三种实现方式(js如何实现深拷贝和浅拷贝)2026-03-11 07:00:10
  • jvm内存模型 知乎(jvm1.8内存模型)2026-03-11 07:00:10
  • 如何解决tomcat乱码问题(tomcat7.0乱码怎么解决)2026-03-11 07:00:10
  • vue3降级vue2(升级vue3)2026-03-11 07:00:10
  • js深拷贝数组(js深拷贝json parse)2026-03-11 07:00:10
  • Redhat9.4安装(redhat6.9安装)2026-03-11 07:00:10
  • ueditor官网没了(ueditor1.5)2026-03-11 07:00:10
  • vue路由守卫死循环(vue的路由守卫有什么应用场景)2026-03-11 07:00:10
  • vue安装脚手架命令(安装vue脚手架的命令)2026-03-11 07:00:10
  • 全屏图片