- 0
- 0
- 约1.11千字
- 约 4页
- 2026-01-07 发布于北京
- 举报
对象的深浅克隆
复习基本类型值和类型值
还记得我们之前学习过的基本类型值和类型值么?
举例当vara=b变量传值时当用==比较时
数字、字符串、布尔、
基本类型值内存中产生新的副本比较值是否相等
undefined、null
内存中不产生新的副本,而比较内存地址是否相同
类型值对象、数组等
是让新变量指向同一个对象即比较是否为同一对象
对象是类型值
◆对象是类型值,这意味着:
•不能用varobj2=obj1这样的语法克隆一个对象
•使用==或者===进行对象的比较时,比较的是它们是否为内
存中的同一个对象,而不是比较值是否相同
对象的浅克隆
◆复习什么是浅克隆:只克隆对象的“表层”,如果对象的某
些属性值又是类型值,则不进一步克隆它们,只是传递
它们的
◆使用for...in...循环即可实现对象的浅克隆
对象的深克隆
◆复习什么是深克隆:克隆对象的全貌,不论对象的属性值是
否又是类型值,都能将它们实现克隆
◆和数组的深克隆类似,对象的深克隆需要使用递归
◆面试时经常会考察深克隆算法,必须掌握
谢谢!
/view/656ddfffd35c1dc5b47c41c3d47774ce/4d6acd39ca9dae73412b89fe6166d074.html?auth_key=1605074513-OepJ-0-44bc5d7489f7785bc42ca426a667bfdf3/3
原创力文档

文档评论(0)