json.Marshal(struct) returns “{}”

后端 未结 3 1548
Happy的楠姐
Happy的楠姐 2020-11-22 07:17
type TestObject struct {
    kind string `json:\"kind\"`
    id   string `json:\"id, omitempty\"`
    name  string `json:\"name\"`
    email string `json:\"email\"`
         


        
3条回答
  •  北恋
    北恋 (楼主)
    2020-11-22 07:51

    • When the first letter is capitalised, the identifier is public to any piece of code that you want to use.
    • When the first letter is lowercase, the identifier is private and could only be accessed within the package it was declared.

    Examples

     var aName // private
    
     var BigBro // public (exported)
    
     var 123abc // illegal
    
     func (p *Person) SetEmail(email string) {  // public because SetEmail() function starts with upper case
        p.email = email
     }
    
     func (p Person) email() string { // private because email() function starts with lower case
        return p.email
     }
    

提交回复
热议问题