js 中map方法返回值与被迭代数组之间的关系解析

2018-12-20  本文已影响0人  开船的

很多时候我们会用这个方法去迭代一个简单的数组,处理后得到返回的结果,但是这个返回结果但是被迭代对象也被修改了,这往往使我们不想看到的,究竟怎么回事呢,不多说直接上代码
1 简单数组

对比结果发现原迭代对象没有被修改

2 数组中放对象

结果被迭代对象也被改了

3对象和值并存

结果被迭代对象没有被修改

4手动修改

结果被迭代对象修改了

结论:map方法的迭代只是做一次浅拷贝,并返回一个新数组,这里深浅拷贝就不做解释了,有兴趣的自己可以了解一下。

上一篇 下一篇

猜你喜欢

热点阅读