Tengo un JSON como este, ¿cómo obtener el valor de StatusDescription
? Lo intenté muchas veces pero el resultado es indefinido. Aquí está mi 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" } ] } }
Estoy usando en mi aplicación NodeJS, como myapp.js
y console.log()
Prueba esto
Almacené tu muestra json en 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" } ] } }
Accedido como a continuación
console.log(json.data.items[0].origin_info.trackinfo[0].StatusDescription);
Items
es una matriz y tomamos el elemento 0
de la matriz.
trackinfo
nuevamente es una matriz y tomamos el elemento 0
de la matriz.
Podemos cambiar el índice de matriz o recorrer y obtener los valores requeridos.
Tienes que iterar a través de tus items
y trackinfo
para llegar a StatusDescription
. Prueba este.
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)