string UserID int } data := []byte(`{"username":"admin", "UserID":345, "userid":12345}`) var user User err := json.Unmarshal(data, &user) fmt.Println(user, err) // {admin 12345} v1では「UserName」フィールドに「username」(⼩⽂字)のJSONキーがマッチします。前述の重複キーの問題と合わせ てuseridかUserIDのどちらを使うか不明瞭です。(前述の通り2回⽬の値が優先されます) v2では⼤⽂字⼩⽂字が⼀致するものが優先されます