小课堂[萌新分院]
【JS-4】如何实现数组深拷贝和浅拷贝?
分享人:任先阳
目录
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
1)什么是数组?
[1,'2','sss'] 这就是一个数组
1)什么是对象数组?
[{name:1},{name:2},{name:3}] 每个元素都是对象的数组叫对象数组
1)为什么有这个问题<\如何实现数组深拷贝和浅拷贝?\>
基本数据类型 --> undefined、null、Number、Boolean、String --> 栈内存
特点:
1块内存地址,直接栈内存
基本数据类型复制就像配钥匙,复制的结果就是,两把钥匙,看起来一模一样
引用数据类型 --> Object、Array、Function --> 堆内存
特点:
2块内存,栈内存存放指针,堆内存存放值
引用类型吧,它类似共享的,就好像1辆小黄车,每个人都可以骑,每次骑车都可能对它有影响,
1)如何深拷贝数组(..不包含对象的数组,包含对象的数组放在扩展思考)?