正在回答
2回答
同学你好, 对于你的问题解答如下:
1、因为使用typeof检测数组和对象,返回结果都是object,如下图所示:
所以代码中typeof obj !== 'object' 这句代码就排除了传入的值不是数组或者对象的情况。
但是由于null使用typeof检测返回结果也是object,如下图所示:
所以需要单独判断obj是否等于null,排除传入的值是null的这种情况
2、经过第一条的分析后可知, if语句的作用就是:如果传入的值是null, 或者不是对象和数组,就直接返回,如下图所示:
祝学习愉快~
好帮手慕慕子
2021-01-25 14:27:26
同学你好, 对于你的问题解答如下:
1、空数组或空对象,也需要深克隆。
2、null并不是表示空数组或空对象,如下图所示:
null是js中的一种基本数据类型,在前面的课程中有详细的讲解,同学可以回顾下课程加深记忆与理解 https://class.imooc.com/lesson/1621#mid=36946
3、 if语句的作用就是:如果传入的值是null, 或者不是对象和数组,就直接返回,不进行深克隆,只有传入的是数组或对象才进行深克隆。
祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星