Heim >Backend-Entwicklung >Golang >Wie kann ich effizient einen einzelnen Wert aus JSON in Go extrahieren, ohne eine Struktur zu definieren?
In Python ist es einfach, einen einzelnen Wert aus einem JSON-Objekt zu extrahieren, ohne eine Struktur zu definieren. Go hingegen erfordert die Deklaration einer Struktur, um die erwartete JSON-Struktur darzustellen. Allerdings kann dieser Ansatz umständlich erscheinen, wenn es darum geht, nur einen bestimmten Wert zu erhalten.
Anstatt eine dedizierte Struktur zu erstellen, können Sie das Standard-JSON-Paket nutzen, um JSON in eine Karte zu dekodieren[ string]interface{}. Dies ermöglicht Ihnen den Zugriff auf den Wert per Schlüssel:
import ( "encoding/json" "fmt" ) func main() { b := []byte(`{"ask_price":"1.0"}`) data := make(map[string]interface{}) err := json.Unmarshal(b, &data) if err != nil { panic(err) } if price, ok := data["ask_price"].(string); ok { fmt.Println(price) } else { panic("wrong type") } }
Karten bieten Flexibilität, da sie Ihnen Folgendes ermöglichen:
Strukturen bleiben nützlich für:
Die Entscheidung zwischen Karten und Strukturen hängt von den spezifischen Anforderungen Ihrer Anwendung ab. Wenn Sie Wert auf Einfachheit und Flexibilität legen, sind Karten möglicherweise die bessere Wahl. Wenn Typsicherheit und explizite Datendarstellung unerlässlich sind, werden Strukturen empfohlen.
Das obige ist der detaillierte Inhalt vonWie kann ich effizient einen einzelnen Wert aus JSON in Go extrahieren, ohne eine Struktur zu definieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!