Golang erfordert, dass Karten Typen explizit deklarieren, was die Möglichkeit zum Erstellen von JSON-Objekten mit verschiedenen Datentypen einschränkt. Die Lösung liegt jedoch darin, interface{} zu nutzen, um jeden Datentyp zu speichern.
Laut der Dokumentation des Encoding/JSON-Pakets:
Wenn der Schnittstellenwert Null ist, ... speichert Unmarshal einen davon im Schnittstellenwert:
So erstellen Sie ein dynamisches JSON-Objekt:
m := map[string]interface{}{"a":"apple", "b":2}
Dieser Code erstellt eine Karte, die in ein JSON-Objekt mit beiden umgewandelt werden kann Zeichenfolge und je nach Wunsch ein ganzzahliger Wert. Durch die Verwendung von interface{} ist der Code flexibel und berücksichtigt zur Laufzeit bestimmte Datentypen.
Das obige ist der detaillierte Inhalt vonWie kann ich komplexe JSON-Objekte in Go dynamisch generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!