3

虽然自己知道数组和对象是引用类型,在赋值的时候要小心,但是今天还是翻了个错,所以再次写了个demo帮助自己:

1、众所周知,数组就是引用类型的

clipboard.png

2、为了防止arr1被改变,所以我们要拷贝一份

clipboard.png

3、我天真地以为数组再拷贝一份就不会出现1中的情况了,那么,如果数组里面的元素是对象呢?(对象也是引用类型)

clipboard.png

4、所以要把arr1彻底拷贝出来,包括元素里的对象(这里我们使用jQuery的extend()方法)

clipboard.png

clipboard.png

最后顺便回顾一下extend方法的用法:extend(deep, targetObj, sourceObj);

(1)、浅拷贝 deep默认为false,targetObj为obj1

clipboard.png

clipboard.png

(2)、深拷贝 deep为true,targetObj为新建的{}

clipboard.png

clipboard.png


雨花石
410 声望19 粉丝

人生没有彩排,每天都是直播