let obj2 = {
level2:{
data:"data"
}
}
let obj2Array = [obj2,obj2,obj2];
obj2Array.map(obj=>{
obj = obj.levle2.data
});
console.log(obj2Array)
我期望的是[“ data”,“ data”,“ data”]。但是我仍然得到了原始数据。
我知道我可以使用forEach()实现此目的,但是为什么不能在map()中重新分配元素?
最佳答案
因为.map()
不会改变原始数组,所以它会返回一个新数组,因此您应该这样做:
let obj2Array = [obj2,obj2,obj2];
obj2Array = obj2Array.map(obj=>{
obj = obj.levle2.data
});
console.log(obj2Array)