Konverter JSON ke Kode
Ubah sampel JSON menjadi antarmuka TypeScript, struct Go, struct serde Rust, skema Zod, atau JSON Schema.
Konverter JSON ke Kode — Tempel sampel JSON yang representatif dan langsung dapatkan kode bertipe kuat dalam bahasa tujuan Anda: antarmuka TypeScript, struct Go dengan tag json, struct serde Rust, skema Zod, atau JSON Schema draft-07. Tipe disimpulkan langsung dari data - objek bersarang menjadi tipe bernama, array menyimpulkan tipe elemennya, dan field yang tidak ada di setiap item array ditandai opsional. Semuanya berjalan di browser Anda, jadi JSON Anda tidak pernah diunggah.
Apa itu Konverter JSON ke Kode?
JSON ke Kode adalah generator tipe gratis di dalam browser yang membaca sampel JSON dan menulis model data yang sesuai dalam bahasa pilihan Anda. Pilih target dari menu Konversi ke - antarmuka TypeScript, struct Go, struct serde Rust, skema Zod, atau JSON Schema - dan tetapkan Nama tipe root untuk memberi label tipe tingkat atas. Mesin inferensi menelusuri JSON: string, angka, boolean, dan null dipetakan ke tipe native, objek bersarang diangkat menjadi tipe bernama tersendiri, array mengadopsi tipe elemennya, dan kunci yang hilang dari beberapa elemen array menjadi opsional. Pengembang frontend dan backend menggunakannya untuk menyusun DTO dari respons API, membuat draf skema validasi, dan menjaga tipe klien dan server tetap sinkron tanpa menulis boilerplate secara manual.
Cara menggunakan Konverter JSON ke Kode
- Tempel atau ketik sampel JSON yang representatif ke kotak input, atau klik Sampel untuk memuat contoh.
- Buka Pengaturan dan pilih target di bawah Konversi ke: TypeScript, Go, Rust, Zod, atau JSON Schema.
- Tetapkan Nama tipe root untuk mengendalikan nama antarmuka, struct, atau skema tingkat atas.
- Baca kode yang dihasilkan di panel keluaran - kode itu menyegarkan diri otomatis saat Anda menyunting JSON atau mengubah opsi.
- Periksa statistik Tipe untuk melihat berapa banyak tipe bernama yang disimpulkan, lalu klik Salin untuk mengambil hasilnya.
Contoh
Objek ke antarmuka TypeScript
Masukan
{ "id": 1, "name": "Ada", "active": true }Keluaran
export interface Root {
id: number;
name: string;
active: boolean;
}Objek bersarang ke struct Go
Masukan
{ "user": { "age": 30 } }Keluaran
type User struct {
Age float64 `json:"age"`
}
type Root struct {
User User `json:"user"`
}Array dengan kunci yang hilang ke skema Zod
Tempel array seperti [{"a":1,"b":2},{"a":3}] dan ubah Konversi ke menjadi Zod. Karena elemen kedua tidak punya b, generator menandai b sebagai .optional() di z.object yang disimpulkan, sehingga skema menerima kedua bentuk.
Pertanyaan yang sering diajukan
- Apakah JSON saya diunggah ke suatu tempat?
- Tidak. Penguraian dan pembuatan kode berjalan sepenuhnya di browser Anda menggunakan mesin inferensi bawaan. JSON Anda tidak pernah meninggalkan perangkat Anda, dan alat ini tetap bekerja secara offline.
- Target mana yang didukung?
- Antarmuka TypeScript, struct Go (dengan tag json dan omitempty untuk field opsional), struct serde Rust (dengan derive Serialize/Deserialize dan rename saat sebuah field diganti namanya), skema Zod, dan JSON Schema draft-07. Alat ini hanya menghasilkan apa yang dapat disimpulkan dengan tepat dari sampel Anda.
- Bagaimana field opsional ditentukan?
- Dari sampel Anda. Ketika sebuah array berisi objek dan sebuah kunci hilang dari sebagian objek, kunci itu disimpulkan sebagai opsional. Selain itu, setiap kunci yang ada dalam sampel diperlakukan sebagai wajib.
- Bagaimana dengan angka, null, dan tipe campuran?
- Angka dipetakan ke tipe float bahasa tersebut (number, float64, f64), null dipetakan ke tipe nullable atau nilai sesuai target, dan field yang menyimpan tipe berbeda di antara sampel kembali ke tipe permisif (unknown, interface{}, serde_json::Value) alih-alih menebak.
- Mengapa keluaran saya kosong atau menampilkan kesalahan?
- Input harus berupa JSON yang valid. Jika penguraian gagal, alat ini menampilkan kesalahan beserta baris dan kolom bila tersedia; perbaiki bagian yang ditandai dan kode akan dibuat ulang seketika.
Alat terkait
Enkode / Dekode Base32 / Base58
Enkode teks ke Base32 (RFC 4648) atau Base58 (alfabet Bitcoin) dan dekode keduanya kembali menjadi teks, sepenuhnya aman UTF-8 dan seluruhnya di browser Anda.
Enkode / Dekode Base64
Enkode atau dekode Base64 (aman UTF-8) dengan alfabet URL-safe, padding opsional, pemenggalan baris 64/76, hitungan bita dan karakter langsung, serta tampilan bita heksa atau biner.
Konverter Huruf Besar/Kecil & Penghitung
Konversi teks antara UPPERCASE, camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, dot.case, dan lainnya, serta hitung karakter, kata, dan baris.
Pemformat & Pemerkecil Kode
Percantik atau perkecil HTML, CSS, dan JavaScript secara instan di browser Anda, dengan indentasi 2 spasi, 4 spasi, atau tab serta kompresi JavaScript bertenaga Terser.