¿Cómo acceder a elementos de un json?

publicado por: Anonymous

Después de llamar a un servicio web, me devuelve estos datos en formato json.

Necesito quedarme con el valor numérico de $value y guardarlo en una variable.
Estoy trabajando con JavaScript. Gracias

Aquí el json:

 {"return":{"attributes":{"xsi:type":"xsd:int"},"$value":115822961}}

solución

Si lo que te devuelven es una cadena string deberias convertirlo en un objeto para poder acceder al atributo:

let objJson = JSON.parse(string)

Ahora volviendo a tu caso, teniendo dicha estructura (la organize mejor usando JsonLint para que la estructura y sus niveles sean mas legible):

  {
      "return": {
          "attributes": {
              "xsi:type": "xsd:int"
          },
          "$value": 115822961
      }
  }

para tener el valor de $value solo debes hacer

 let value = objJson.return.$value.;

normalmente si no hay caracteres extraños se puede acceder a los atributos de un objeto separando por . los identificadores, pero para identificadores con carácter especial puedes usar ['clave'] y podrías traer campos con espacios por ejemplo ['mi atributo'] dicho esto las siguientes llamadas son idénticas:

 objJson.return.$value;
 objJson['return']['$value'];
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *