Convert Json.Number into int/int64/float64 in golang

KuZon picture KuZon · Jan 25, 2018 · Viewed 18k times · Source

I have a variable data, which is an interface. When I print its type I get it as json.Number. How do I type cast to int/int64/float64

If I try data.(float64), it ends up with panic error

panic: interface conversion: interface {} is json.Number, not float64

Answer

Ilayaraja picture Ilayaraja · Jan 25, 2018

Check this documentation to know the available methods on json.Number: https://golang.org/pkg/encoding/json/#Number

f, err := data.(json.Number).Float64()