我正在Go中制作一个PDF生成器,它的其中一部分将是一张表。要创建表,我需要声明列的宽度,这将通过获取页面宽度(减去边距)并除以表中的列数来完成
表中的列是在这样的结构中定义的:
type Person struct {
Name string `json:"Name"`
Age string `json:"Age"`
Comment string `json:"Comment"`
}
并且将JSON解组到其中
我不想将'3'作为列号硬编码到我的代码中,并且想知道我如何以编程方式从JSON或结构本身中计算属性
我已经花了几天的时间搜索,所有结果都集中在难以获取值的人上,但是我想要键!
预先感谢
答案 0 :(得分:5)
reflect.TypeOf(Person{}).NumField()
或
len(structs.Map(Person{}))
(您需要导入“ github.com/fatih/structs”)
答案 1 :(得分:-1)
Object.getOwnPropertyNames(object)
将返回给定对象的属性名称数组