试图访问对象内部的嵌套json对象

试图访问对象内部的嵌套json对象,json,object,nested,Json,Object,Nested,我已经做了几个小时了,我快不知所措了 我试图访问的数据可以被解析,也可以被字符串化,哪一个更容易编码。 这是我试图访问的对象的解析版本 data: [ { id: '----', user_id: '----', user_login: '----', user_name: '----', game_id: '----', game_name: '-----', type: 'live',

我已经做了几个小时了,我快不知所措了

我试图访问的数据可以被解析,也可以被字符串化,哪一个更容易编码。 这是我试图访问的对象的解析版本

    data: [
    {
      id: '----',
      user_id: '----',
      user_login: '----',
      user_name: '----',
      game_id: '----',
      game_name: '-----',
      type: 'live',
      title: '----',
      viewer_count: -,
      started_at: '----',
      language: 'en',
      thumbnail_url: '----',
      tag_ids: [Array],
      is_mature: false
    }
  ],
  pagination: {}
}
我认为我遇到的问题是开始时的“数据”

下面是定义这个的代码

request.get(currentStatus, (err,res,body) => {

        if(err){

            return console.log(err);
        }
        console.log('Status: ' + res.statusCode)
        
        var data = body

        var id = _.get(body, 'data.id');
        console.log(id)
        
    });```

I really just need to access "id" and define it as its own variable.

Thank's for any advice.


我认为您可以简单地将响应主体解析为js对象,然后访问其字段,如:

parsed = JSON.parse(body);
id = parsed.data[0].id;

如果数据数组长度大于1,则可以根据需要更改索引

您只需放置与需要访问的对象对应的数组索引。
var id=data[0].id

问题的一部分是:`id=parsed.data[0].id;^TypeError:无法读取未定义的属性“id”`是否可以在不同的步骤中输出
body
的值?例如,在解析之前和之后?JSON.parse不应返回undefined,而应在字符串无法解析时引发异常,因此响应中可能缺少数据数组?如果不进行解析,则会导致此id=body.data[0].id;^TypeError:无法读取undefinedit的属性“0”,它不是关于解析的,而是关于确保收到正确的响应,请尝试执行
console.log(body)
,然后,如果body正确,则解析它,然后使用
console.log(parsed)
再次打印它。确保您试图解析的内容具有
data
属性,否则它将是未定义的