Как подсчитать количество свойств в структуре или документе JSON? - PullRequest
0 голосов
/ 19 ноября 2018

Я делаю генератор PDF в Go, и одним из разделов будет таблица.Для создания таблицы мне нужно указать ширину столбцов, и это будет сделано путем получения ширины страницы (минус поля) и деления на количество столбцов в таблице

Столбцы в таблицеопределен в структуре, подобной этой:

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

И JSON распакован в нее

Я не хочу жестко кодировать '3' в качестве номера столбца в моем коде и хочузнаете, как я могу программно подсчитать свойства либо из JSON, либо из самой структуры

Я провел несколько дней в поиске, и все результаты сосредоточены на людях, имеющих проблемы с получением значений, но мне нужны ключи!

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 19 ноября 2018
reflect.TypeOf(Person{}).NumField()

или

 len(structs.Map(Person{}))

(нужно импортировать "github.com/fatih/structs")

0 голосов
/ 19 ноября 2018

Object.getOwnPropertyNames(object) вернет массив имени свойства для данного объекта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...