L'analyse d'un tableau JSON dans Go implique d'utiliser le package json pour interpréter la structure du tableau et extraire ses valeurs.
Considérez l'extrait de code suivant :
type JsonType struct { Array []string } func main() { dataJson := `["1", "2", "3"]` arr := JsonType{} err := json.Unmarshal([]byte(dataJson), &arr.Array) log.Printf("Unmarshaled: %v", err) }
Notez que la fonction Unmarshal renvoie une erreur, qui doit être traitée en conséquence. Dans le code ci-dessus, l'erreur est ignorée, ce qui entraîne un message de journal trompeur. Pour remédier à ce problème, remplacez log.Printf("Unmarshaled: %v", err) par ce qui suit :
if err != nil { log.Fatal(err) } log.Printf("Unmarshaled: %v", arr)
La structure JsonType peut également être omise, simplifiant davantage le code :
package main import ( "encoding/json" "log" ) func main() { dataJson := `["1", "2", "3"]` var arr []string _ = json.Unmarshal([]byte(dataJson), &arr) log.Printf("Unmarshaled: %v", arr) }
Ce code optimisé réduit les allocations de mémoire et améliore la clarté du code. L'utilisation d'un pointeur lors du démarshalage permet une gestion efficace de la mémoire, notamment dans les contextes de traitement où plusieurs démarshals peuvent se produire sur la même variable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!