Go JSON Marshal:省略空嵌套結構
Go 中的json:",omitempty" 標籤可讓您排除具有空白的欄位JSON 輸出的值。但是,此行為不適用於零值結構。
要省略巢狀結構(如果它有任何空白欄位),您可以使用指標而不是非指標結構。這可確保該結構在未分配非零值的情況下被視為空。
例如,考慮以下結構:
type ColorGroup struct { ID int `json:",omitempty"` Name string Colors []string } type Total struct { A *ColorGroup `json:",omitempty"` // Use pointer B string `json:",omitempty"` }
在這種情況下,如果 group .A 未分配非零值,它將被視為空並從 JSON 輸出中省略。這與使用非指標結構形成對比,後者仍會在 JSON 輸出中包含空 group.A。
以下 Playground 連結示範了此行為:https://play.golang.org/p /3i7rh4e3t3D
以上是如何在 Go JSON Marshal 中省略空巢狀結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!