JSON Encoding Basics
JSON kodlash asoslari
JSON — turli dasturlar orasida ma'lumot almashishning eng ko'p ishlatiladigan formati. Go struct'ini JSON matniga aylantirish — "marshal qilish" deb ataladi.
package main
import (
"encoding/json"
"fmt"
)
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
u := User{Name: "Aziz", Age: 21}
data, err := json.Marshal(u)
if err != nil {
fmt.Println("xato:", err)
return
}
fmt.Println(string(data))
}Struct maydonlari nomidan keyingi json:"name" yozuvi — "tag" (yorliq) deyiladi. U Go'ning Name maydonini JSON'da qanday nomlash kerakligini aytadi (odatda JSON'da kichik harf bilan yozish odat). Katta harf bilan boshlanmagan (eksport qilinmagan) maydonlar JSON'ga umuman chiqmaydi — bu haqda "Packages & Organization" kursida gaplashgan edik.
>_ Exercise
Product struct'ini JSON'ga aylantiring.
- •Product struct'iga "name" va "price" json tag'larini qo'shing
- •p qiymatini json.Marshal bilan JSON'ga aylantiring
- •natijani matn sifatida chop eting
Stuck? Reveal a hint to help you.
Key Takeaway
Key Takeaway:
json.Marshal Go struct'ini JSON matniga aylantiradi; json:"..." tag'lari JSON'dagi maydon nomlarini boshqaradi.
NEXT UP
JSON Decoding
$ go run main.go
Kodingizni ishga tushiring