在go中使用omitempty的代码实例
程序员文章站
2022-06-08 23:18:44
omitempty在go中的使用
直接上代码:
package main
import (
"encoding/json"
"fmt"
)
t...
omitempty在go中的使用
直接上代码:
package main import ( "encoding/json" "fmt" ) type person struct { name string `json:"name"` age int `json:"age"` addr string `json:"addr,omitempty"` } func main() { p1 := person{ name: "taoge", age: 30, } data, err := json.marshal(p1) if err != nil { panic(err) } fmt.printf("%s\n", data) fmt.println(p1.name, p1.age, p1.addr) p2 := person{ name: "cang laoshi", age: 18, addr: "japan", } data2, err := json.marshal(p2) if err != nil { panic(err) } fmt.printf("%s\n", data2) fmt.println(p2.name, p2.age, p2.addr) }
结果:
{"name":"taoge","age":30}
taoge 30
{"name":"cang laoshi","age":18,"addr":"japan"}
cang laoshi 18 japan
可以看到,有了omitempty后,如果addr为空, 则生成的json中没有addr字段。
可以去掉omitempty, 再试试。
不多说。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接
上一篇: 最适合女人吃的滋阴补肾的食物