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

gogo-interface

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

Best Answer

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

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