@kyanny's blog

我々の目的は何かと聞かれて、私はたった一つの言葉で答えることができる。勝利。それだけだ - ウィンストン・チャーチル

Go: json struct 大文字小文字

JSON and Go - The Go Blog

The json package only accesses the exported fields of struct types (those that begin with an uppercase letter). Therefore only the the exported fields of a struct will be present in the JSON output.

  • json.Marshal: 構造体の非公開フィールドは JSON に現れない
  • json.Unmarshal: 構造体の非公開フィールドには JSON の値は入らない
    • そのフィールドの型のゼロ値が入る


Marshal/Encode せず Unmarshal/Decode するだけでも、値にアクセスしたければ構造体のフィールド名は大文字始まりにすること。