这块没听懂

来源:2-10 对象的深浅克隆(2)

qq_Unique彼岸花丶花海_0

2021-09-11 10:24:50

result.push(peedClone(o[i]))

result.push(peedClone(o[k]))

这俩句没听懂啥意思,知道是递归但是他这样写有啥用没听明白

写回答

1回答

好帮手慕久久

2021-09-11

同学你好,解答如下:

首先要知道:deepClone方法是深克隆,传入A,就会得到克隆后的A。

当给deepClone传入参数o时,要判断一下o的类型,如果o是数组,则要对数组的每一项都进行克隆,而数组的每一项就是o[i],因此result.push(deedClone(o[i])) 就是把数组的每一项进行深克隆,再将克隆后的结果追加到result中:

https://img.mukewang.com/climg/613c1c7d09816f9910110377.jpg

result就是o克隆后的结果:

https://img.mukewang.com/climg/613c1e1b09c0d78511530315.jpg

如果o是对象,则要将每一个属性k对应的属性值进行克隆:

https://img.mukewang.com/climg/613c1e83090a8eff07480283.jpg

https://img.mukewang.com/climg/613c1ea309f02f5b07010307.jpg

https://img.mukewang.com/climg/613c1ecd0960e51f07620305.jpg

祝学习愉快!

0

0 学习 · 15276 问题

查看课程