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
DDDasal
2024-12-08 15:35:13547semak imbas

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" } }

JSON yang Diingini:

{ "votes": { "option_A": "3" }, "count": "1" }

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)

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

raw["count"] = 1

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

out, err := json.Marshal(raw)

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:
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