verweist auf ein Element des JSON (Javascript) -Objekts

7

Wie beziehe ich mich auf ein Element des JSON (Javascript) -Objekts. Beispiel: alert (homes.Agents [1] .name);

%Vor%     
mart 15.01.2010, 21:28
quelle

6 Antworten

11

Das ist nicht sehr gut JSON oben dort, im Fall des Agentenwertes überschreibt der zweite Schlüssel den ersten.

Sie haben wahrscheinlich gemeint:

%Vor%

Dann würden Sie auf den Namen des ersten Agenten als

zugreifen %Vor%

Um einen der Werte aus den Auflistungen zu erhalten, würden Sie ähnlich etwas tun:

%Vor%

Die Punktsyntax kann überall dort verwendet werden, wo ein gültiger Bezeichner vorhanden ist, andernfalls müssen Sie die Array-Syntax verwenden.

Als Nebenbemerkung bin ich mir nicht sicher über die Struktur der Daten, aber es ist möglich, dass Sie die äußere Ebene [] eliminieren können, die Ihre gesamte Struktur in einem Array einschließt. Dann müssten Sie nicht auf alles als homes[0]['Listings'] und stattdessen einfach homes['Listings'] zugreifen.

    
Crast 15.01.2010 21:34
quelle
5

Ihre JSON-Syntax ist falsch. Sie können denselben Schlüssel nicht zweimal in einem Objekt verwenden. Stattdessen benötigen Sie ein Array:

%Vor%

Dann können Sie auf die Agenten wie folgt zugreifen:

%Vor%     
Jordan Running 15.01.2010 21:33
quelle
3

Homes ist ein Array, also ist Ihr erster Accessor indexbasiert.

Häuser [0]

Agents ist ein Objekt und ein Objekt, das zwei gleichnamige Schlüssel enthält. Das ist ein Nein-Nein.

Wenn Sie diese Daten selbst definieren, sollten Sie

ändern %Vor%

bis

%Vor%

Dann könnten Sie auf die fraglichen Daten zugreifen, indem Sie

drücken %Vor%     
sberry 15.01.2010 21:35
quelle
2

Sie sollten Ihren Objekteigenschaften eindeutige Namen geben. In Ihrem Beispiel überschreibt die Eigenschaft des zweiten Namens die erste, sodass houses [0] .Agents.name immer "Mona Mayflower" ist.

Sobald Sie das sortiert haben, denke ich, dass Sie danach suchen:

%Vor%     
Derek Swingley 15.01.2010 21:33
quelle
1

Dies ist ungültig JSON Agents ist nur ein Objekt, kein Array. Wenn es so umstrukturiert wurde:

%Vor%

Dann könntest du homes.Agents[1].name benutzen, um 'Mona Mayflower' zu bekommen

    
gtd 15.01.2010 21:34
quelle
0

Beispiel aus dem folgenden Link :

%Vor%

" myJSONObject.bindings[0].method " gibt " newURI "

zurück     
Brett Widmeier 15.01.2010 21:33
quelle

Tags und Links