Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Menambah Kunci 'kira' pada Rentetan JSON dengan Struktur Tidak Diketahui?

Bagaimanakah Saya Boleh Menambah Kunci 'kira' pada Rentetan JSON dengan Struktur Tidak Diketahui?

DDD
Lepaskan: 2024-12-08 15:35:13
asal
592 orang telah melayarinya

How Can I Add a

Menyahkod JSON dengan Struktur Tidak Diketahui

Persoalan timbul apabila cuba mengubah suai rentetan JSON bagi struktur yang tidak diketahui. Objektifnya adalah untuk menambah kunci "kira" pada JSON sedia ada:

JSON Asal:

{ "votes": { "option_A": "3" } }
Salin selepas log masuk

JSON yang Diingini:

{ "votes": { "option_A": "3" }, "count": "1" }
Salin selepas log masuk

Cabarannya terletak pada kebolehubahan struktur JSON, menjadikannya tidak praktikal untuk menggunakan penyahkod JSON konvensional dengan pratentukan struktur.

Penyelesaian: Unmarshal into a Map

Untuk mengatasi cabaran ini, pendekatan praktikal ialah unmarshal JSON ke dalam peta rentetan ke antara muka:

var raw map[string]interface{}
json.Unmarshal(in, &raw)
Salin selepas log masuk

Ini membolehkan manipulasi data JSON berdasarkan nilai kunci. Dalam kes ini, kunci "kira" baharu boleh ditambah:

raw["count"] = 1
Salin selepas log masuk

Untuk menjana rentetan JSON yang diingini, peta yang diubah suai disusun semula menjadi rentetan JSON:

out, err := json.Marshal(raw)
Salin selepas log masuk

Sebagaimana hasilnya, struktur JSON yang tidak diketahui boleh diubah suai dan kekunci "kira" boleh ditambah seperti yang dikehendaki.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Kunci 'kira' pada Rentetan JSON dengan Struktur Tidak Diketahui?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan