go - 在golang中将Json.Number转换成int/int64/float64

标签 go go-interface

我有一个变量数据,它是一个接口(interface)。当我打印它的类型时,我得到它作为 json.Number。我如何将类型强制转换为 int/int64/float64

如果我尝试 data.(float64),它会以 panic 错误结束

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

最佳答案

查看此文档以了解 json.Number 上的可用方法: https://golang.org/pkg/encoding/json/#Number

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

关于go - 在golang中将Json.Number转换成int/int64/float64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48443495/

相关文章:

mysql - 查询行中的最大值在 GoRM 中返回 "0"

unit-testing - 单元测试具有 ORM 交互的 Go 函数

Golang 访问通用结构的数据元素

unit-testing - 如何使用相互依赖的接口(interface)方法模拟结构

http - 即使响应没有缓存 header ,文件也会被浏览器缓存

testing - 如何衡量 Golang 集成测试覆盖率?

amazon-web-services - 使用 aws-sdk-go/roleARN/queueARN (sqs) 获取消息

string - 这两个err值有什么区别?

reflection - 设置作为接口(interface)传递的任何结构的变量{}

go - GoLang 接口(interface)名称及其方法数的规则