【问题标题】:Accessing value in nested object [duplicate]访问嵌套对象中的值[重复]
【发布时间】:2019-10-09 20:26:21
【问题描述】:

我不明白如何访问一个对象中的值,该对象是一个内部有一个对象的数组。

我尝试过使用点符号和 [] 以及 array.reduce。但我做错了。

我更改了值,但结构保持不变:

"test": {
  "title": "My title",
  "category": null,
  "info": [{
    "time": 10,
    "type": "minutes"
  }]
}

我需要获取时间和类型的值,但我没有定义。

【问题讨论】:

  • 假设test是对象obj的一个属性,那么你可以简单地使用obj['test']['info'][0][time']obj['test']['info'][0]['type']。不过,也许您正在获取这些数据,因此可能存在同步问题。你从哪里得到这个test 对象?
  • 谢谢@MaheerAli,我忘了[0] :)

标签: javascript nested-object


【解决方案1】:

最终的对象是数组的第一个元素,所以你需要先访问它的第一个元素。

const obj = {
  "test": {
    "title": "My title",
    "category": null,
    "info": [{
      "time": 10,
      "type": "minutes"
    }]
  }
}
console.log(obj.test.info[0].time);
console.log(obj.test.info[0].type);

【讨论】:

    【解决方案2】:

    使用点符号访问属性 对象atest 对象组成,该对象又包含键info,其值是一个数组,其中包含一个具有所需键的对象

    a->test->info->[{time,type}]
    

    var a = {
      "test": {
        "title": "My title",
        "category": null,
        "info": [{
          "time": 10,
          "type": "minutes"
        }]
      }
    }
    
    console.log(a.test.info[0].time)
    console.log(a.test.info[0].type)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-11
      • 1970-01-01
      • 2020-08-09
      • 2019-09-15
      相关资源
      最近更新 更多