Zuordnung von Zeichenfolgen zu verschiedenen Typen in JSON-Objekten
In Go erfordern Zuordnungen die explizite Angabe ihrer Schlüssel- und Werttypen. Beim Umgang mit JSON-Objekten, die Schlüssel-Wert-Paare beliebiger Typen zulassen, stellt diese Einschränkung eine Hürde dar.
Frage:
Wie können wir eine Karte erstellen, die das kann in ein JSON-Objekt der Form { „a“: „apple“, „b“: 2 } konvertiert werden, wobei Schlüssel und Werte unterschiedlich sein können Typen?
Antwort:
Go bietet über seinen Schnittstellentyp {} eine Lösung, die Werte jeden Typs enthalten kann. Gemäß der Dokumentation des Encoding/JSON-Pakets gelten beim Unmarshaling von JSON in eine Schnittstelle{} die folgenden Regeln:
Um dies zu nutzen, Wir können einfach eine Map[string]interface{} erstellen und sie mit Werten verschiedener Typen füllen:
m := map[string]interface{}{"a":"apple", "b":2}
Diese Map kann jetzt einfach erstellt werden in ein JSON-Objekt umgewandelt, indem es mit der Funktion json.Marshal() gemarshallt wird.
Das obige ist der detaillierte Inhalt vonWie ordne ich Zeichenfolgen verschiedenen Typen in Go-JSON-Objekten zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!