Json 反应对象的对象-如何循环通过
我有以下编码的JSON:Json 反应对象的对象-如何循环通过,json,reactjs,loops,dictionary,foreach,Json,Reactjs,Loops,Dictionary,Foreach,我有以下编码的JSON: const data = JSON.parse('{"first":{"aaa":"111","bbb":"2222"},"second":{"aaa":"111","bbb":"2222"}}') 解码后如下: { "first": { "aaa": "111", "bbb": "2222" }, "second": { "aaa": "111", "bbb": "2222" } } 然后,我尝试了以下几种方法来循环
const data = JSON.parse('{"first":{"aaa":"111","bbb":"2222"},"second":{"aaa":"111","bbb":"2222"}}')
解码后如下:
{
"first": {
"aaa": "111",
"bbb": "2222"
},
"second": {
"aaa": "111",
"bbb": "2222"
}
}
然后,我尝试了以下几种方法来循环使用这些数据,但没有达到预期效果:
{Object.keys(data).map((key, value) =>
console.log(key);
<li>{value.aaa}</li>
)}
{Object.keys(数据).map((键,值)=>
控制台日志(键);
{value.aaa}
)}
我可以控制台。注销数据并查看循环,但无法查看以显示aaa或bbb值
我做错了什么
thx
Adam在循环中使用
:
{for (key in data) {
for (innerKey in data[key]) {
<li>{data[key][innerKey]}</li>
}
}}
{for(输入数据){
for(数据中的innerKey[键]){
{data[key][innerKey]}
}
}}
我们需要在key
和innerKey
周围使用括号的原因是需要首先计算这些属性。您可以指定一个保存值的变量
var a = {
"first": {
"aaa": "111",
"bbb": "2222"
},
"second": {
"aaa": "111",
"bbb": "2222"
}
}
使用以下命令获取密钥:
var keys = Object.keys(a);
最后对其进行迭代:
for(var i = 0; i < keys.length; i++) {
var key = (keys[i]) ;
console.log(a[key])
}
for(var i=0;i
尝试使用
{Object.keys(data).map((key, index) =>
<li key={index}>{data[key].aaa}</li>
)}
{Object.keys(数据).map((键,索引)=>
{data[key].aaa}
)}
map中的第二个参数是元素的索引。将代码更改为li元素中的data[key].aaa以获得所需的值。