代码之家  ›  专栏  ›  技术社区  ›  SuperSecretAndNotSafeFromWork

如何计算结构或JSON文档中的属性数?

  •  1
  • SuperSecretAndNotSafeFromWork  · 技术社区  · 6 年前

    我在Go中制作了一个PDF生成器,其中一个部分是一个表。要创建一个表,我需要说明列的宽度,这将通过获取页面宽度(减去页边距)并除以表中的列数来完成。

    表中的列在这样的结构中定义:

    type Person struct {
        Name    string `json:"Name"`
        Age     string `json:"Age"`
        Comment string `json:"Comment"`
    }
    

    JSON未编入其中

    我不想将列号“3”硬编码到我的代码中,我想知道如何从JSON或结构本身以编程方式对中的属性进行计数。

    我已经花了几天时间搜索了,所有的结果都集中在那些无法获得价值的人身上,但是我想要这些关键点!

    提前谢谢

    2 回复  |  直到 6 年前
        1
  •  5
  •   Ehsan.Saradar    6 年前
    reflect.TypeOf(Person{}).NumField()
    

     len(structs.Map(Person{}))
    

    (您需要导入“github.com/fatih/structs”)

        2
  •  -1
  •   AmerllicA    6 年前

    这个 Object.getOwnPropertyNames(object) 将返回给定对象的属性名数组