GoDasturchi
JSON Encoding Basics

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.

example.go
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.

Hints (0/3)

Key Takeaway

Key Takeaway:

json.Marshal Go struct'ini JSON matniga aylantiradi; json:"..." tag'lari JSON'dagi maydon nomlarini boshqaradi.

NEXT UP

JSON Decoding

OUTPUT

$ go run main.go
Kodingizni ishga tushiring

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.

example.go
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.

Hints (0/3)

Key Takeaway

Key Takeaway:

json.Marshal Go struct'ini JSON matniga aylantiradi; json:"..." tag'lari JSON'dagi maydon nomlarini boshqaradi.

NEXT UP

JSON Decoding