Pregunta

Tengo un trozo de JSON que se parece a algo como:

{
"map": [
    [
        "zimbraFeatureCalendarUpsellEnabled",
        "FALSE" 
    ],
    [
        "zimbraPrefCalendarDayHourStart",
        "8" 
    ],
    [
        "zimbraFeatureOptionsEnabled",
        "TRUE" 
    ],
    [
        "zimbraAttachmentsViewInHtmlOnly",
        "FALSE" 
    ]
]
}

(y así sucesivamente; hay más de 200 entradas)

Necesito poder seleccionar pares clave / valor individuales de la respuesta JSON, ya sea con jQuery o con Javascript antiguo. Sin embargo, no he podido averiguar cómo abordar una clave específica. ¿Alguna idea?

¿Fue útil?

Solución

Lo que has descrito es un objeto de un solo nivel, con una gran cantidad de arreglos anidados, por lo que el acceso será

myObject.map[entryNumber][0 or 1] // 0 == key, 1 == value

Probablemente quieras algo similar a esto (a menos que estés trabajando con la API existente o algo así):

{
    "map": {
        "zimbraFeatureCalendarUpsellEnabled": "FALSE",
        "zimbraPrefCalendarDayHourStart": "8",
         ...
    }
}

Otros consejos

En lugar de usar matrices, podrías usar un objeto:

{
    map : {
      "zimbraFeatureCalendarUpsellEnabled" : "FALSE",
      "zimbraPrefCalendarDayHourStart" : "8",
      "zimbraFeatureOptionsEnabled" : "TRUE",
      "zimbraAttachmentsViewInHtmlOnly" : "FALSE" 
    }
}

y luego para acceder a ella:

myJSONObject.map.zimbraFeatureCalendarUpsellEnabled;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top