在Go 中使用預設值解析JSON
當在Go 中解析JSON 並遇到缺失或未定義的欄位時,通常未定義的欄位時,通常未定義需要指派預設值以確保完整一致的資料表示。
要使用內建的encoding/json套件來實現這一點,避免將空結構傳遞給 json.Unmarshal。相反,使用預設值初始化結構。例如,讓我們考慮以下結構:
type Test struct { A string B string C string }
字段A、B 和C 分別具有預設值“a”、“b”和“c”,我們可以解析JSON字串:
{"A": "1", "C": 3}
轉換為以下結構:
out := Test{ A: "default a", B: "default b", // C defaults to the empty value "" }
透過呼叫json.Unmarshal(example, &out),將JSON 解組為 out,以 JSON 中的值覆寫指定字段,同時保留其餘字段的預設值。上面的範例將產生 {A:1 B:default b C:3}。
此技術提供了一種簡單的方法來處理 JSON 資料解析中缺少的字段,同時保持資料完整性。
以上是如何在 Go 中處理缺少預設值的 JSON 欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!