我正在循环遍历对象sliced
,我想将属性name
提取到theRest
变量中。使用下面的代码,我收到错误无法读取未定义的属性名称
我的对象 sliced
给了我一个数组:[{name: 'Bart'},{name: 'Lisa'},{name: 'Maggie'}]
const theRest = sliced.map((item, i) => {
item[i].name;
})
抱歉,变量命名可能令人困惑,但我希望您能有所了解。
最佳答案
您收到错误的原因是当您使用 .forEach() 时, item[i]
将在不是数组的对象中查找索引(sliced
是数组,item
是正在处理的数组中的 currentValue)。如果您想使用您的代码,您应该将 item[i].name
更改为 item.name
并且它应该可以工作。我建议您使用.map()而是获得您正在寻找的结果。
let arr = [{name: 'Bart'},{name: 'Lisa'},{name: 'Maggie'}];
let theRest = arr.map((item) => item.name);
console.log(...theRest);
关于javascript - 如何使用 forEach 循环访问对象属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47148382/