Go tag


Esempio

I campi Struct possono avere tag associati a loro. Questi tag possono essere letti dal pacchetto reflect per ottenere informazioni personalizzate specificate su un campo dallo sviluppatore.

struct Account {
    Username      string `json:"username"`
    DisplayName   string `json:"display_name"`
    FavoriteColor string `json:"favorite_color,omitempty"`
}

Nell'esempio precedente, i tag vengono utilizzati per modificare i nomi delle chiavi utilizzati dal pacchetto di encoding/json quando si effettua il marshalling o l'unmarshaling JSON.

Mentre il tag può essere qualsiasi valore di stringa, è consigliabile utilizzare la key:"value" separata dallo spazio key:"value" coppie key:"value" :

struct StructName {
    FieldName int `package1:"customdata,moredata" package2:"info"`
}

I tag struct utilizzati con il pacchetto encoding/xml e encoding/json sono usati in tutta la libarary standard.