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" } } 然后,我尝试了以下几种方法来循环

我有以下编码的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"
  }
}
然后,我尝试了以下几种方法来循环使用这些数据,但没有达到预期效果:

{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以获得所需的值。