我如何检查golang中的某个变量是否有类型func
,如下所示:
func A() {}
func main() {
variable := A
isFunc := IsFunc(variable) // true or false
}
答案 0 :(得分:9)
func IsFunc(v interface{}) bool {
return reflect.TypeOf(v).Kind() == reflect.Func
}
答案 1 :(得分:2)
已经解决了这个问题:
func IsFunc(fn interface{}) bool {
return reflect.TypeOf(fn).Kind() == reflect.Func
}