我很好奇如何在golang中访问变量标签.我知道JSON使用它们是这样的:
type Foo struct {
Bar string `json:"-"`
}
Run Code Online (Sandbox Code Playgroud)
但我似乎无法找到一种方法来访问我自己使用的代码中的标签.我怎样才能获得这些值,以便在代码中使用它们?
你会用反射.从go docs中查看此示例:
package main
import (
"fmt"
"reflect"
)
func main() {
type S struct {
F string `species:"gopher" color:"blue"`
}
s := S{}
st := reflect.TypeOf(s)
field := st.Field(0)
fmt.Println(field.Tag.Get("color"), field.Tag.Get("species"))
}
Run Code Online (Sandbox Code Playgroud)