为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用返回 json 的 api 请求从数组中提取嵌套对象?

如何使用返回 json 的 api 请求从数组中提取嵌套对象?

慕的地6264312 2021-12-02 19:14:28
我有一个 API,我正在调用它来返回查询。无法更改此查询的格式以使其更易于操作。它有一个嵌套数组,我需要将它与来自更高级别的数据相关联。具体来说,我试图在“column_values”中提取更高级别的 id 字段和“value”字段,并将它们彼此关联,最好在新数组中。我觉得答案就在这里,但我无法掌握如何以正确的格式提取数据并将其关联在一起。大多数注释行可能会被忽略,它们是我使语法正常工作的其他尝试。抱歉搞砸了。我真的很陌生。    const axios = require('axios')const body = {    query: ` query {boards(ids:307027197) {name, items {name id column_values(ids:lockbox_) {title id value text}}}} `,  }console.log("Requesting Query....");function getApi (callback){    setTimeout(function() {axios.post(`https://api.monday.com/v2`, body, {        headers: {            MY_API_KEY_DATA          },      })      .catch(err => {        console.error(err.data)      })      .then(res => {          var queried = res          var array = queried.data.data.boards[0].items                  //console.log(queried)                  //console.log(array)             console.log(array.length)                  //console.log("Total Items:", array.length)          var i;          for (i = 0; i < array.length; i++){            callback(queried.data.data.boards[0].items)          //callback([(queried.data.data.boards[0].items[i].column_values[0])])        }    }, 0);})};getApi(callback => {    console.log(callback)            //console.log(parsed)                //output for above                //{"name":"address","id":"1234","column_values":                 //[{"title":"Lockbox#","id":"lockbox_","value":"\"31368720\"","text":"31368720"}]}            //console.log(JSON.parse(parsed))             //output for above            //[            //       {            //           name: 'address',            //           id: '353428429',            //           column_values: [ [Object] ]            //       }            //]});setTimeout(function() {console.log("Query Returned")},1000);
查看完整描述

1 回答

?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

从您的数据来看, column_values 是一个包含对象的数组。对于数组,您必须使用密钥访问它。对于您的情况,如果您的数据类似于 var data = { "name":"address", "id":"1234", "column_values": [{"title":"Lockbox#","id":"lockbox_ ","value":"\"31368720\"","text":"31368720"}] }

您可以访问 column_values 的 id 作为 data.column_values[0].id


查看完整回答
反对 回复 2021-12-02
  • 1 回答
  • 0 关注
  • 128 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信