在golang中查找自定义类型的基础类型
返回在golang中查找自定义类型的基础类型,go,typeof,Go,Typeof,返回main.M 如何找到项的基本类型,如map[string]interface{}是的,如果您使用“root type”的意思是这样的,您可以获取类型的精确结构: 从那里,您可以随意显示它。是的,您可以获取类型的精确结构,如果这就是“根类型”的含义: 从那里,您可以随意显示它。我认为没有现成的方法,但您可以手动构造基础类型: var item M t := reflect.TypeOf(item) fmt.Println(t.Kind()) // map fmt.Println(t.Ke
main.M
如何找到项的基本类型,如
map[string]interface{}
是的,如果您使用“root type”的意思是这样的,您可以获取类型的精确结构:
从那里,您可以随意显示它。是的,您可以获取类型的精确结构,如果这就是“根类型”的含义:
从那里,您可以随意显示它。我认为没有现成的方法,但您可以手动构造基础类型:
var item M
t := reflect.TypeOf(item)
fmt.Println(t.Kind()) // map
fmt.Println(t.Key()) // string
fmt.Println(t.Elem()) // interface {}
我认为没有现成的方法,但您可以手动构造底层类型:
var item M
t := reflect.TypeOf(item)
fmt.Println(t.Kind()) // map
fmt.Println(t.Key()) // string
fmt.Println(t.Elem()) // interface {}
根类型是什么?我从未听说过这样的术语。相关/可能重复。根类型是什么?我从未听说过这样的术语。相关的/可能重复的。
type M map[string]interface{}
...
var m M
t := reflect.TypeOf(m)
if t.Kind() == reflect.Map {
mapT := reflect.MapOf(t.Key(), t.Elem())
fmt.Println(mapT)
}