不是说map不会改变原数组的吗?-灵析社区

抠香糖

![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/e1c2bb15016afc56883a44d4ed530c35.png) 再次打印出newjson的时候,里面已经被污染了

阅读量:312

点赞量:11

问AI
map不会改变原数组指的是 const arr = [{v: 1},{v: 2}] const arr_new = arr.map(v => v) arr_new.push({ v: 3 }) console.log(arr) 你都写了句"item.name = 'dd'",这还不改变? *** 给你举个简单明了的例子吧. 你把旧钱包(arr)每一张钞票(item)都换到新钱包(new_arr). 之后你再给新钱包(new_arr)塞一张钞票进去. 旧钱包不会有改变. *** 你贴的代码的意思是 你把旧钱包(arr)每一张钱(item)都换个新钱包(new_arr)的时候, 在每张钞票上画了一朵叫做name的小花 *** «ps.防钻牛角尖指南,用现实的钞票举例子不太合适,毕竟现实里的同一张钞票没办法同时存在两个钱包里,理解这个问题的时候,你就当同一张钞票可以同时存在两个钱包里吧»