Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menghuraikan Tatasusunan JSON dengan betul dalam Go Menggunakan Pakej `json`?

Bagaimana untuk Menghuraikan Tatasusunan JSON dengan betul dalam Go Menggunakan Pakej `json`?

Susan Sarandon
Lepaskan: 2024-11-30 21:52:18
asal
299 orang telah melayarinya

How to Correctly Parse JSON Arrays in Go Using the `json` Package?

Menghuraikan Tatasusunan JSON dalam Go Menggunakan Pakej JSON

Apabila cuba menghuraikan rentetan yang mewakili tatasusunan JSON dalam Go menggunakan pakej json, sesetengah pembangun mungkin menghadapi ralat dengan fungsi Unmarshal. Artikel ini menyediakan penyelesaian dan menyerlahkan pendekatan alternatif.

Kod Asal:

type JsonType struct {
    Array []string
}

func main() {
    dataJson := `["1","2","3"]`
    arr := JsonType{}
    unmarshaled := json.Unmarshal([]byte(dataJson), &arr.Array)
    log.Printf("Unmarshaled: %v", unmarshaled)
}
Salin selepas log masuk

Isu:
Ralat yang dikembalikan oleh Unmarshal sedang dicetak dan bukannya tatasusunan yang dijangkakan. Untuk menyelesaikan masalah ini, fungsi Unmarshal hendaklah diubah suai seperti berikut:

err := json.Unmarshal([]byte(dataJson), &arr)
Salin selepas log masuk

Nilai pulangan Unmarshal ialah ralat, yang harus dikendalikan dengan sewajarnya.

Pendekatan Ringkas:
Untuk memudahkan kod, struct JsonType boleh dihapuskan dan sekeping boleh digunakan terus:

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)
}
Salin selepas log masuk

Faedah Menggunakan Penunjuk (Pilihan):
Melalukan penunjuk kepada pembolehubah dalam Unmarshal membolehkan pengoptimuman memori dan potensi peningkatan prestasi, terutamanya dalam pemprosesan konteks di mana pembolehubah yang sama digunakan semula berulang kali.

Kesimpulan:
Dengan mengubah suai fungsi Unmarshal dan menggunakan hirisan terus, pembangun boleh menghuraikan tatasusunan JSON dalam Go dengan berkesan menggunakan pakej json. Penggunaan penunjuk apabila menghantar pembolehubah kepada Unmarshal boleh mengoptimumkan lagi penggunaan memori, terutamanya dalam senario pemprosesan.

Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Tatasusunan JSON dengan betul dalam Go Menggunakan Pakej `json`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan