繁体   English   中英

遍历对象的嵌套数组

[英]Looping through nested arrays of objects

所以我有一个对象userEvents数组,我想在对象内部使用event数组。 event数组也存储对象,我试图在其中访问start属性并对其进行更改。 我当时在考虑嵌套地图功能,但没有成功。 我附加了userEvents数组的控制台日志 在此处输入图片说明

const { events } = this.props.events;
    const userEvents = events

给你只想要

访问start属性

userEvents.forEach(userEvent => userEvent.events
  .forEach(event => { console.log(event.start) })
)

您有一个基本上可以简化此过程的数组:

let userEvents = [
  {events: [{start: 1},{start: 2}]},
  {events: [{start: 3},{start: 4}]}
]

您应该能够遍历userEvents ,然后在其中查看每个元素的events数组并进行遍历:

 let userEvents = [ {events: [{start: 1},{start: 2}]}, {events: [{start: 3},{start: 4}]} ] userEvents.forEach(e => { e.events.forEach(event =>{ console.log(event.start) }) }) 

这将使您能够访问所需的元素。 如果您尝试提取这些数据或将它们转换为其他数据格式,那么诸如map()filter()reduces()类的工具当然会有所帮助。

例如,将所有开始作为数组获取:

 let userEvents = [ {events: [{start: 1},{start: 2}]}, {events: [{start: 3},{start: 4}]} ] let starts = userEvents.reduce((a, e) => { return [...a, ...e.events.map(event => event.start)] }, []) console.log(starts) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM