In GO, how can I get an array of the ages from the json Data below
{
"people": {
"female": [
{
"age": 31,
"id": 1
},
{
"age": 32,
"id": 2
}
],
"male": [
{
"age": 33,
"id": 3
},
{
"age": 34,
"id": 5
}
]
}
}
End result should be a collection of ages eg. [31,32,33,34]
Create a struct that matches the layout and create the ages slice from it:
func main() {
var s struct {
People struct {
Female []struct {
Age int
}
Male []struct {
Age int
}
}
}
err := json.Unmarshal([]byte(j), &s)
var ages []int
for _, p := range s.People.Female {
ages = append(ages, p.Age)
}
for _, p := range s.People.Male {
ages = append(ages, p.Age)
}
fmt.Println(err, ages)
}