Konverter JSON ke TypeScript
Ubah contoh JSON menjadi antarmuka (interface) atau alias tipe TypeScript. Mendeteksi tipe primitif, array, dan objek bertingkat, menggabungkan array objek menjadi satu antarmuka dengan kunci opsional, serta memungkinkan Anda menamai tipe akar.
Input
Nama untuk antarmuka/tipe level teratas. Diubah menjadi PascalCase.
Cara tipe JSON null. Array kosong selalu menjadi unknown[].
Output
Panduan
Tempel contoh JSON dan dapatkan interface atau alias tipe TypeScript siap pakai yang menggambarkan bentuknya. Konverter membaca JSON Anda, menyimpulkan tipe untuk setiap nilai, dan memberi nama struktur bertingkat untuk Anda — tanpa mengetik manual, tanpa menebak. Ini cara tercepat untuk mengubah respons API, file konfigurasi, atau fixture menjadi kode bertipe.
Fungsinya
Alat membaca JSON Anda dan menghasilkan definisi TypeScript yang sesuai:
- Primitif dipetakan ke
string,number, danboolean. - Objek bertingkat menjadi
interfacebernama sendiri, dirujuk oleh induknya (mis.address: Address). - Array primitif menjadi
T[]— dan array heterogen menjadi union, seperti(number | string)[]. - Array objek digabung menjadi satu interface yang menggabungkan setiap kunci yang ditemukan di seluruh elemen. Kunci apa pun yang tidak ada di setidaknya satu elemen ditandai opsional dengan
key?:. - Nilai
nulldiperlebar menjadinull(atauundefined, pilihan Anda) alih-alih merusak output. - Array kosong menjadi
unknown[], karena tidak ada yang bisa disimpulkan.
Cara menggunakannya
- Tempel atau ketik JSON Anda ke kotak input.
- Atur nama tipe akar — ini memberi nama interface level teratas (default
Root, diubah menjadi PascalCase). - Pilih gaya keluaran: alias
interfaceatautype. - Pilih bagaimana nilai null harus diketik (
nullatauundefined). - Salin TypeScript yang dihasilkan, atau unduh sebagai
interfaces.ts.
Output diperbarui otomatis saat Anda mengedit, sehingga Anda dapat mengubah JSON dan melihat tipenya berubah secara real time.
Mana yang harus dipilih — interface atau type?
Interface adalah pilihan umum untuk bentuk objek dan mendukung declaration merging; alias tipe berguna saat Anda ingin menggabungkan atau mengekspor bentuk bersama union dan tipe utilitas. Anggota yang dihasilkan identik, jadi pilih yang sesuai dengan basis kode Anda. Anda dapat berpindah di antara keduanya kapan saja.
Bagaimana array objek ditangani?
Setiap objek dalam array dipindai dan kunci-kuncinya digabung menjadi satu interface. Kunci yang muncul di sebagian tetapi tidak semua elemen dibuat opsional (key?:). Ini yang biasanya Anda inginkan untuk array API di dunia nyata yang rekamannya tidak sepenuhnya seragam.
Apa yang terjadi dengan array campuran atau kosong?
Array campuran seperti [1, "two"] menghasilkan tipe elemen union: (number | string)[]. Array kosong tidak memiliki anggota untuk diperiksa, sehingga menjadi unknown[] — aman dan eksplisit, serta mudah dipersempit nanti.
Apakah ini menangani JSON bertingkat dalam?
Ya. Setiap objek bertingkat mendapat interface sendiri yang dinamai sesuai kuncinya, dan interface tersebut dikeluarkan bersama tipe akar sehingga seluruh struktur bertipe lengkap.
Privasi
Konverter ini berjalan sepenuhnya di browser Anda. JSON Anda diurai dan diubah di perangkat Anda — tidak pernah diunggah ke server, dicatat, atau disimpan. Anda dapat menggunakannya dengan payload sensitif dan bekerja secara offline setelah halaman dimuat.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/json-to-typescript-converter \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonInput": "{\"id\":1,\"tags\":[\"admin\",\"user\"],\"scores\":[95,87]…",
"rootName": "Root",
"exportStyle": "interface",
"nullType": "null"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `json-to-typescript-converter` tool (JSON to TypeScript Converter) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.