Problemas al analizar JSON multinivel
-
03-07-2019 - |
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?
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