【发布时间】:2020-09-16 11:21:32
【问题描述】:
我有一个这样的数组:
console.log(this.props.countrysideTypes)
[{…}]
0:
field: Array(8)
0: "Wood"
1: "Grain"
2: "Grain"
3: "Grain"
4: "Stone"
5: "Iron"
6: "Grain"
7: "Grain"
length: 8
__proto__: Array(0)
id: "-MHLWLm8bFRE2_1aahWk"
userId: "lPqZ8Oj90Se2qBEIzTJq1OSfbo62"
__proto__: Object
length: 1
__proto__: Array(0)
现在我想达到例如第一项“木头”
我试过了
console.log(this.props.countrysideTypes[0])
这给了我:
{field: Array(8), userId: "lPqZ8Oj90Se2qBEIzTJq1OSfbo62", id: "-MHLWLm8bFRE2_1aahWk"}
field: Array(8)
0: "Wood"
1: "Grain"
2: "Grain"
3: "Grain"
4: "Stone"
5: "Iron"
6: "Grain"
7: "Grain"
length: 8
__proto__: Array(0)
id: "-MHLWLm8bFRE2_1aahWk"
userId: "lPqZ8Oj90Se2qBEIzTJq1OSfbo62"
__proto__: Object
但我无法获得更深的嵌套项。我试过了
console.log(this.props.countrysideTypes[0].field) //TypeError: Cannot read property 'field' of undefined console.log(this.props.countrysideTypes[0][0]) //TypeError: Cannot read property 'field' of undefined console.log(this.props.countrysideTypes[0].field[0]) //TypeError: Cannot read property 'field' of undefined console.log(this.props.countrysideTypes.field) // 未定义
【问题讨论】:
-
jsfiddle.net/tevemadar/xd5c0m2t 为您描述的前两次尝试产生相同的输出,并且最后两次尝试按预期工作(打开浏览器的实际 JS 控制台)。如果您的数据表现不同,一个重要的细节将是:它来自哪里?
标签: javascript arrays reactjs