Menyahkod Tatasusunan JSON dengan Jenis Nilai Campuran
Dalam sesetengah kes, anda mungkin menghadapi tatasusunan JSON yang mengandungi unsur jenis yang berbeza. Contohnya:
{["NewYork",123]}
Tatasusunan Go memerlukan anda untuk menyatakan jenisnya secara eksplisit, yang boleh menjadi mencabar apabila berurusan dengan tatasusunan jenis campuran.
Penyelesaian Menggunakan Antara Muka{}
Untuk mengendalikan tatasusunan jenis campuran, anda boleh memanfaatkan jenis antara muka{}, yang membenarkan nilai apa-apa jenis. Begini cara anda boleh mencapainya dalam Go:
package main import ( "encoding/json" "fmt" ) type UntypedJson map[string][]interface{} func main() { j := `{"NYC": ["NewYork",123]}` ut := UntypedJson{} err := json.Unmarshal([]byte(j), &ut) if err != nil { fmt.Println(err) return } fmt.Printf("%#v", ut) }
Nota: Perlu diingat bahawa contoh JSON yang disediakan secara teknikalnya tidak sah, kerana objek JSON mesti mempunyai kunci. Contoh yang diperbetulkan ialah:
{"NYC": ["NewYork",123]}
Atas ialah kandungan terperinci Bagaimana untuk Menyahkod Tatasusunan JSON dengan Jenis Data Campuran dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!