Your example is non-sensical.
It has nothing to do with a comparison between static types vs dynamic types, it is only the usage of an awful JSON library in a not so nice language.
In F# you even have Type Providers for JSON that give you auto-completion in the IDE:
type Simple = JsonProvider<""" { "name":"John", "age":94 } """>
let simple = Simple.Parse(""" { "name":"Tomas", "age":4 } """)
simple.Age
simple.Name