[英]Golang unset Struct Field
在Golang中,我在Struct下面有三个字段
type Person struct {
name string
age int
rank int
}
对于Processing,我需要一个rank字段,但是对于输出,我想从struct中排除rank字段,因为我直接将struct上面的内容传递给JSON编码器以引发响应。
有什么方法可以取消Struct的等级字段?
要取消设置字段,请为其分配零值,例如:
var p Person
p.rank = 0
还知道,如果要使用Person
来处理JSON,则必须导出字段,未导出的字段不会由encoding/json
包处理,因此将Person
更改为:
type Person struct {
Name string
Age int
rank int
}
由于未导出,仅此一项将使rank
从JSON处理中遗漏。
如果您还需要导出rank
字段,请使用json:"-"
标记值从JSON处理中排除导出的字段:
type Person struct {
Name string
Age int
Rank int `json:"-"`
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.