JS浅拷贝与深拷贝的学习记录

很久之前就留意到深浅拷贝,这次用js来进行深浅拷贝的学习 go!go!go!


###First: 浅/深拷贝是当对Object,Array这样的复杂对象的进行拷贝时两种拷贝方式。浅拷贝只拷贝一层对象的属性,而深拷贝则递归拷贝了所有层级对象属性。


浅拷贝


深拷贝


PS:

  • jQuery的extend可以深拷贝也可以浅拷贝。
  • 需要注意的是,如果对象比较大,层级也比较多,深复制会带来性能上的问题。
  • 在遇到需要采用深复制的场景时,可以考虑有没有其他替代的方案。在实际的应用场景中,也是浅复制更为常用。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏月色的自留地

Python2中文处理纪要

1415
来自专栏破晓之歌

Promise 入门(推荐) 原

错误1:入栈出栈,前后两个函数不在同一个栈。异步回调的过程中没有办法是由try...catch

801
来自专栏我的博客

php命名空间详解

1、命名空间概述 从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,...

2848
来自专栏web前端教室

会员提问 之 JS中的私有方法有什么意义?

先说结论, (1)JavaScript没有私有方法。 (2)JavaScript的私有方法都是通过“作用域”来实现的。 (3)有没有用?有没有意义?肯定有! 什...

2018
来自专栏Java Edge

Filter如何工作

2718
来自专栏大壮

iOS 内存管理的理解分享(理论篇)

1427
来自专栏对角另一面

lodash源码分析之缓存方式的选择

每个人心里都有一团火,路过的人只看到烟。 ——《至爱梵高·星空之谜》 本文为读 lodash 源码的第八篇,后续文章会更新到这个仓库中,欢迎 star:po...

3219
来自专栏IMWeb前端团队

Promise接口实现之jQuery 的deferred对象

本文作者:IMWeb json 原文出处:IMWeb社区 未经同意,禁止转载 Promise是什么? 我们知道JavaScript是单线程,如果遇到某...

17410
来自专栏python3

python字典

所不同的是列表的索引只是从0开始的有序整数,不可重复;而字典的索引实际上在字典里应该叫键,虽然字典中的键和列表中的索引一样是不可重复的,但键是无序的,也就是说字...

682
来自专栏JavaQ

深入理解Spring系列之十:DispatcherServlet请求分发源码分析

DispatcherServlet是SpringMVC的核心分发器,它实现了请求分发,是处理请求的入口,本篇将深入源码分析它的请求分发过程。可点击文末左下角“阅...

3289

扫码关注云+社区