深浅拷贝抽象分析

浅拷贝:仅拷贝对象的值,也就是基本数据类型,若是为引用数据类型,共用内存地址

深拷贝:创造一个新的空间来存储拷贝的数据 不共用内存地址

举个例子:老师罚你抄3遍古诗,你看着课本抄了一遍之后 对着你的第一遍抄第二遍,那你的第二遍就是对你的第一遍进行浅拷贝,因为引用墨水(内存地址)相同,若是换支笔对着第一遍抄第三遍,那么引用墨水(内存地址)不同,那就属于深拷贝

实现浅拷贝的方法:

Object.assign()  

函数库lodash的_.clone方法

展开运算符...

Array.prototype.concat()

Array.prototype.slice()

实现深拷贝的方法:

.JSON.parse(JSON.stringify())

函数库lodash的_.cloneDeep方法

还可以通过手写递归方法实现深拷贝

posted @ 2022-04-27 12:15  贫僧不秃头  阅读(36)  评论(0)    收藏  举报