type JSONSample struct { Field string `json:"field"` Omit string `json:"-"` OmitEmpty string `json:"omit_empty,omitempty"` Num int `json:"num,string"` } func main() { sample := JSONSample{ Field: "field", Omit: "omit", OmitEmpty: "", Num: 1, } bytes, _ := json.Marshal(&sample) fmt.Println(string(bytes)) /* -- output { "field": "field", "num":"1" } - omitは省略されています - omit_emptyは値がないので、JSONではフィールドごと省
![Golangで構造体を使ったJSON操作で出来ることを調べてみた | DevelopersIO](https://cdn-ak-scissors.b.st-hatena.com/image/square/0d93f7d26add6d22f8b4bc0e0e960ea5721ee876/height=288;version=1;width=512/https%3A%2F%2Fdevio2023-media.developers.io%2Fwp-content%2Fuploads%2F2015%2F02%2Fgolang.png)