开发者问题收集

没有 map JS 函数的情况下如何访问对象数据?[重复]

2020-07-01
342

我正在使用 React、Redux 和 JS 进行教程,该教程使用此虚拟对象作为 redux 存储的一部分。

const initState = {
    posts:[
       [
        {id: '1', title: 'Fire', body: 'Squirtle Laid an Egg'},
        {id: '2', title: 'Land', body: 'Charmander Laid an Eg'},
        {id: '3', title: 'More Land', body: 'a Helix Fossil was Found'}
       ]
    ]
}

在教程中,生产者使用 posts.map() 访问数据。有没有办法在不使用 map 函数的情况下访问此数据?我试过了

<p>{posts[0].id}</p>

但出现以下错误:

未捕获的 TypeError:无法读取未定义的属性“0”

仅获取此对象的第一个 id 值的正确符号是什么?

2个回答

您缺少包装对象,并且想要访问帖子的第一个元素 initState.posts[0][0].id

CygnusOlor
2020-07-01

请注意,posts[0] 是一个包含 3 个对象的数组。它是嵌套的,因此您必须调用 posts[0][0].id

Adam Redmond
2020-07-01