引用类型与对象拷贝

1、引用类型有哪些?非引用类型有哪些

  • 引用类型:Object、Array、Function、正则,将这些对象保存在堆内存中,变量中被赋值的只是一个堆内的地址(指针),该地址为堆内存的某个位置用于保存对象实际的值
  • 非引用类型:String、Boolean、Number、Undefined、Null,变量保存在栈内存中实际的值

2、下面代码输出什么?,为什么

引用类型与对象拷贝_第1张图片
console执行结果
引用类型与对象拷贝_第2张图片
分析过程

3、下面代码输出什么?,为什么

引用类型与对象拷贝_第3张图片
执行结果
引用类型与对象拷贝_第4张图片
分析过程

4、如下代码输出什么?为什么

引用类型与对象拷贝_第5张图片
执行结果
引用类型与对象拷贝_第6张图片
分析过程

5、过滤如下数组,只保留正数,直接在原数组上操作

引用类型与对象拷贝_第7张图片
代码生成
引用类型与对象拷贝_第8张图片
代码执行

6、过滤如下数组,只保留正数,原数组不变,生成新数组

引用类型与对象拷贝_第9张图片
代码生成
引用类型与对象拷贝_第10张图片
执行结果

7、写一个深拷贝函数,用两种方式实现

引用类型与对象拷贝_第11张图片
image.png

你可能感兴趣的:(引用类型与对象拷贝)