下面的代码有问题吗?
arr.map(item=>{ if(item.id === '123') { item = {}; } });
这样赋值是无效的。item只是 arr[index] 的引用,当你改变item的属性的时候是有效地,因为指向的是同一个对象,但是直接修改item的值的话,不会影响到arr[index]的值。
item
arr[index]
arr.map((item, index)=>{ if(item.id === '123') { arr[index] = {}; } });
← 利用ts-check对JavaScript进行静态类型检测 js变量提升与函数提升的详细过程 →