🛝Toolio
Tentang Kontak

🔷 JSON ke TypeScript -- Generator Interface Instan, Gratis & Offline

Tempelkan objek atau array JSON apa pun dan alat ini akan menghasilkan definisi interface TypeScript (atau alias tipe) secara instan -- sepenuhnya gratis, tanpa login, tanpa upload, dan berjalan 100% di browser Anda. Objek bersarang menjadi interface bersarang, array objek digabung menjadi bentuk bertipe tunggal dengan bidang opsional, dan array tipe campuran menghasilkan tipe union secara otomatis.

Privat sejak awal. Alat ini berjalan sepenuhnya di browser Anda — tidak ada yang Anda masukkan diunggah atau disimpan, dan bisa dipakai offline.

Tentang

Konversi JSON ke TypeScript ini menggunakan walker inferensi tipe sisi klien murni -- tanpa library eksternal, tanpa panggilan server. Ia mengunjungi setiap node di JSON Anda secara rekursif: nilai primitif dipetakan ke string, number, boolean, atau null; objek bersarang menghasilkan interface anak bernama; array objek digabungkan menjadi satu bentuk bertipe tunggal dengan bidang opsional, dan array tipe campuran menghasilkan tipe union secara otomatis. Anda dapat memilih antara output interface atau alias tipe, dan menetapkan nama interface akar. Semua pekerjaan tetap di browser Anda -- data JSON Anda tidak pernah dikirim ke mana pun.

Cara pakai

  1. Tempelkan JSON Anda ke bidang input -- objek, array, atau struktur bersarang semuanya berfungsi.
  2. Atur nama interface akar (default: RootObject) dan pilih antara output interface atau alias tipe.
  3. Klik Konversi ke TypeScript (atau tekan Ctrl+Enter) untuk menghasilkan definisi secara instan.
  4. Lihat output TypeScript -- interface bersarang muncul terlebih dahulu, interface akar terakhir.
  5. Klik Salin untuk menyalin hasil ke clipboard Anda dan menempelkannya langsung ke proyek TypeScript Anda.

FAQ

Apakah alat ini mengunggah JSON saya ke server?
Tidak. Semua pemrosesan terjadi sepenuhnya di browser Anda menggunakan JavaScript. JSON Anda tidak pernah meninggalkan perangkat Anda.
Bagaimana cara mengatasi array objek dengan bentuk berbeda?
Semua bentuk elemen digabung menjadi satu interface. Kunci yang ada di setiap elemen wajib; kunci yang hilang dari elemen apa pun ditandai sebagai opsional dengan ?.
Apa perbedaan antara mode interface dan tipe?
interface menggunakan deklarasi interface TypeScript (dapat diperluas, disarankan untuk bentuk objek). type menggunakan alias tipe (lebih fleksibel, mendukung primitif dan union di tingkat akar). Keduanya menghasilkan hasil yang setara untuk bentuk objek.
Apakah bisa menangani JSON yang sangat bersarang?
Ya. Walker tipe ini sepenuhnya rekursif -- setiap objek bersarang menghasilkan interface bernama sendiri, dan interface dihasilkan dalam urutan ketergantungan (yang paling dalam terlebih dahulu) sehingga TypeScript dapat dikompilasi tanpa kesalahan referensi sebelumnya.
Apa yang terjadi jika array JSON saya mengandung tipe campuran seperti string dan number?
Array tipe campuran menghasilkan tipe union. Misalnya, [1, 'hello', true] menjadi (number | string | boolean)[]. Jika array memiliki satu tipe yang konsisten, tidak diperlukan union.
Apakah alat ini mengunggah data saya?
Tidak. Semuanya berjalan langsung di browser Anda, jadi data Anda tidak pernah meninggalkan perangkat — bahkan tetap bisa dipakai offline setelah halaman dimuat.