UTILS.
%100 tarayıcıda
🐹

JSON'dan Go Struct'a

Bir JSON örneğini json etiketli, tiplendirilmiş Go struct'larına dönüştürün. int64, float64, bool, iç içe struct'ları ve slice'ları tarayıcınızda çıkarır.

çıktı

Bu araç hakkında

Bir JSON örneği yapıştırın; bu araç her anahtar için `json:"field"` etiketleriyle birlikte kullanıma hazır Go struct'ları oluşturur. Her şey tarayıcınızda yerel olarak çalışır; bu yüzden JSON'unuz asla hiçbir yere yüklenmez.

Oluşturucu JSON.parse çağırır ve sonucu özyinelemeli olarak dolaşır: string'ler string, boolean'lar bool, tam sayılar int64 ve ondalıklı sayılar float64 olur, null interface{} olur, diziler ilk elemanın tipinden bir slice olur (boşken []interface{}) ve her nesne kendi adlandırılmış iç içe struct'ı olur. Alan adları dışa aktarılan PascalCase'e dönüştürülür (ID ve URL gibi yaygın kısaltmalar büyük harfe çevrilir), orijinal anahtar ise json etiketinde korunur.

Bir API yanıtından ya da yapılandırma dosyasından Go modellerini hızlıca oluşturmak için kullanın, ardından tipleri gereken yerde elle düzenleyin. JSON'un ayrı bir tam sayı tipi olmadığından, 1.0 gibi bir değer tam sayı olarak okunur; float64 istiyorsanız bir ondalık (1.5) ekleyin.

Sık sorulan sorular

Sayılar nasıl tiplendirilir?
Kesirli kısmı olmayan ayrıştırılmış bir değer int64 olur; ondalıklı bir değer float64 olur. JSON, 1'i 1.0'dan ayırt edemez; bu yüzden her ikisi de int64 olarak okunur.
İç içe nesneler ve dizilerle ne olur?
Her nesne ayrı adlandırılmış bir struct olur; diziler ilk elemanın tipinden bir slice olur ya da dizi boşsa veya eleman null ise []interface{} olur.
Alan adları geçerli Go mu?
Anahtarlar dışa aktarılan PascalCase'e dönüştürülür ve orijinal anahtar bir json etiketinde tutulur; böylece user_id ya da first-name gibi adlarda bile JSON doğru şekilde çift yönlü dönüşür.
JSON'um bir sunucuya gönderiliyor mu?
Hayır. Ayrıştırma ve kod üretimi tamamen tarayıcınızda gerçekleşir; hiçbir şey yüklenmez ya da saklanmaz.

Daha fazla araç