Problemi durante l'analisi di JSON multilivello
-
03-07-2019 - |
Domanda
Ho un pezzo di JSON che assomiglia a:
{
"map": [
[
"zimbraFeatureCalendarUpsellEnabled",
"FALSE"
],
[
"zimbraPrefCalendarDayHourStart",
"8"
],
[
"zimbraFeatureOptionsEnabled",
"TRUE"
],
[
"zimbraAttachmentsViewInHtmlOnly",
"FALSE"
]
]
}
(e così via; ci sono oltre 200 voci)
Devo essere in grado di selezionare singole coppie chiave / valore dalla risposta JSON, sia con jQuery sia con il semplice Javascript vecchio. Tuttavia, non sono stato in grado di capire come indirizzare una chiave specifica. Qualche idea?
Soluzione
Quello che hai descritto è un oggetto a livello singolo, con un sacco di matrici nidificate, quindi l'accesso sarà
myObject.map[entryNumber][0 or 1] // 0 == key, 1 == value
Probabilmente vuoi qualcosa di simile a questo (a meno che tu non stia lavorando con API esistenti o simili):
{
"map": {
"zimbraFeatureCalendarUpsellEnabled": "FALSE",
"zimbraPrefCalendarDayHourStart": "8",
...
}
}
Altri suggerimenti
Invece di usare le matrici, puoi usare un oggetto:
{
map : {
"zimbraFeatureCalendarUpsellEnabled" : "FALSE",
"zimbraPrefCalendarDayHourStart" : "8",
"zimbraFeatureOptionsEnabled" : "TRUE",
"zimbraAttachmentsViewInHtmlOnly" : "FALSE"
}
}
e quindi per accedervi:
myJSONObject.map.zimbraFeatureCalendarUpsellEnabled;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow