2 回答
TA贡献1824条经验 获得超6个赞
你可以使用反射来完成这样的事情:
package main
import (
"fmt"
"reflect"
)
type DisplayObject struct {
ID string `json:"id,omitempty" bson:"id"`
URI string `json:"uri,omitempty" bson:"uri"`
Display string `json:"display,omitempty" bson:"display"`
}
func main() {
displayObj := &DisplayObject{ID: "foo"}
s := reflect.ValueOf(displayObj).Elem()
for i := 0; i < s.NumField(); i++ {
fieldName := s.Type().Field(i).Name
fieldValue := s.Field(i).String()
fmt.Printf("%s: %s\n", fieldName, fieldValue)
// do something with the field data
}
}
TA贡献1886条经验 获得超2个赞
您正在尝试比较无与伦比。Javascript 对象类似于 map[string]interface{} 。在您的情况下也可以是 map[string]string,对于地图,您可以使用 len(m) == 0。
结构是更快的容器,但不太灵活的容器。您不能更改成员的数量或类型。
- 2 回答
- 0 关注
- 151 浏览
添加回答
举报