Company logo
  • Jobs
  • Bootcamp
  • About Us
  • For professionals
    • Home
    • Jobs
    • Courses
    • Questions
    • Teachers
    • Bootcamp
  • For business
    • Home
    • Our process
    • Plans
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Calculator

0

55
Views
Get field of JSON in Javascript Console

I have a JSON like this, how to get the value of StatusDescription? I tried many times but the result is undefined. Here is my JSON:

 {
  "meta": {
    "a2": 200,
    "ta": "dasd",
    "asdd": "asdda"
  },
  "data": {
    "items": [
      {
        "id": "",
        "number": "",
        "origin_info": {
          "ItemReceived": "2021-10-02 02:07:49",
          "phone": 123456789,
          "trackinfo": [
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            },
   
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            }
          ]
        },
        "destination_info": null,
        "lastEvent": "grgrgrgrgr",
        "lastUpdateTime": "mewmemew"
      }
    ]
  }
}

I'm using in my NodeJS app, like myapp.js, and console.log()

7 months ago · Juan Pablo Isaza
2 answers
Answer question

0

Try this

I stored your sample json in variable json

var json = {
  "meta": {
    "a2": 200,
    "ta": "dasd",
    "asdd": "asdda"
  },
  "data": {
    "items": [
      {
        "id": "",
        "number": "",
        "origin_info": {
          "ItemReceived": "2021-10-02 02:07:49",
          "phone": 123456789,
          "trackinfo": [
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            },
   
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            }
          ]
        },
        "destination_info": null,
        "lastEvent": "grgrgrgrgr",
        "lastUpdateTime": "mewmemew"
      }
    ]
  }
}

Accessed it like below

console.log(json.data.items[0].origin_info.trackinfo[0].StatusDescription);

Items is an array and we took array element 0.

trackinfo again is an array and we took array element 0.

We can change array index or loop through and get required values.

7 months ago · Juan Pablo Isaza Report

0

You have to iterate through your items and trackinfo to get to StatusDescription. Try this one.

const data =  {
  "meta": {
    "a2": 200,
    "ta": "dasd",
    "asdd": "asdda"
  },
  "data": {
    "items": [
      {
        "id": "",
        "number": "",
        "origin_info": {
          "ItemReceived": "2021-10-02 02:07:49",
          "phone": 123456789,
          "trackinfo": [
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            },
   
            {
              "StatusDescription": "what i need",
              "Details": "",
              "substatus": "ok"
            }
          ]
        },
        "destination_info": null,
        "lastEvent": "grgrgrgrgr",
        "lastUpdateTime": "mewmemew"
      }
    ]
  }
}

const items = data.data.items.map(item => item)
const trackinfo = items.map(item => item.origin_info.trackinfo).flat()
console.log(trackinfo)
const statusDescription = trackinfo.map(trackinfo => trackinfo.StatusDescription)

console.log(statusDescription)

7 months ago · Juan Pablo Isaza Report
Answer question
Find remote jobs