浅谈js深浅拷贝

113 阅读1分钟

前置知识: 基本数据类型存储在栈内存,引用数据类型存储在堆内存

浅拷贝:只遍历一层数据结构,当一层数据类型存在引用数据类型时,就是浅拷贝

深拷贝: 对每一层引用数据类型都进行遍历,直到返回基本数据类型时,才拷贝赋值

常见浅拷贝方法

1、for in 循环一层

2、... 扩展运算符

3、jquery 的 extend 方法

4、直接 = 赋值

5、Object.assign()

6、数组的slice, concat方法

常见深拷贝方法

1、jquery extend 方法第一个参数为true

2、Object.create();

3、JSON.parse(JSON.stringify())

4、手动递归遍历