Cara menggunakan
- Tempel JSON, buka file, atau coba contoh.
- Sesuaikan pengaturan. Hasil diperbarui saat Anda mengetik.
- Salin atau unduh hasil yang sudah diformat.
Memahami JSON
JSON adalah format teks untuk bertukar data terstruktur. Anda sering menjumpainya dalam respons API, file konfigurasi, dan rekaman yang diekspor. Jenis nilainya yang sedikit memudahkan perpindahan data antarbahasa pemrograman.
Pemformatan membuat struktur tersebut lebih mudah diperiksa. Indentasi menunjukkan nilai mana yang satu kelompok; pemisah baris memudahkan pemeriksaan rekaman bersarang. Pilihan tata letak ini tidak mengubah data yang diwakili dokumen valid.
Nilai dan struktur
Dokumen JSON berisi satu nilai. Nilai tersebut dapat berupa objek atau array, tetapi string, angka, boolean, atau null juga valid pada akar. Objek mengaitkan nama berupa string dengan nilai; array berisi nilai dalam urutan yang bermakna. Keduanya dapat bersarang.
| Tipe | Contoh | Arti |
|---|---|---|
| Objek | {"name": "Ada"} | Properti bernama di dalam kurung kurawal. |
| Larik (array) | ["red", "blue"] | Urutan teratur di dalam kurung siku. |
| Teks (string) | "Hello, world" | Teks yang diapit tanda kutip ganda. |
| Angka | -12.5e2 | Angka desimal, dengan eksponen opsional. |
| Logika (boolean) | true / false | Salah satu dari dua nilai logika. |
| Nilai null | null | Nilai null eksplisit; bukan properti yang dihilangkan. |
Sintaks yang perlu tepat
Gunakan tanda kutip ganda untuk nama properti dan string. Titik dua memisahkan nama dari nilainya; koma memisahkan anggota objek dan elemen array. Jangan tambahkan koma setelah anggota atau elemen terakhir. Komentar, tanda kutip tunggal, dan ekspresi JavaScript berada di luar JSON ketat.
Literal true, false, dan null ditulis dengan huruf kecil. Angka menggunakan notasi desimal dengan tanda minus, pecahan, dan eksponen opsional. Nol di awal, tanda plus di awal, NaN, dan Infinity tidak valid. Dalam string, gunakan escape untuk tanda kutip, garis miring terbalik, dan karakter kontrol; baris baru harus ditulis sebagai escape seperti \n.
Nama dalam objek sebaiknya unik agar pertukaran data andal. Aplikasi pengguna data yang berbeda dapat mempertahankan nilai berbeda ketika nama berulang. Pemformat melaporkan duplikat dan mempertahankannya agar Anda dapat memutuskan cara menanganinya. Pemeriksaan sintaks saja tidak dapat memastikan bahwa dokumen sesuai kontrak API atau JSON Schema.
Yang dipertahankan oleh pemformatan
DevToolsy memvalidasi masukan dan menyesuaikan spasi kosong di sekitar token aslinya. Teks angka seperti 900719925474099312345, 19.9900, 1e+400, dan -0 tetap dipertahankan, begitu pula escape string aslinya. Ini menghindari pembulatan akibat parsing dan serialisasi ulang angka sebagai nilai floating-point JavaScript. Aplikasi yang membaca hasil tetap menentukan presisi numeriknya sendiri.
Indentasi, akhir baris LF atau CRLF, dan baris baru terakhir adalah konvensi keluaran. Urutkan kunci merupakan perubahan terpisah yang opsional: fitur ini secara rekursif mengurutkan anggota objek menurut nama yang telah didekode dengan perbandingan deterministik yang membedakan huruf besar dan kecil. Urutan array dan urutan relatif nama duplikat tetap utuh. Fitur ini ditujukan untuk membaca dan membandingkan perubahan; bukan skema kanonisasi untuk tanda tangan kriptografis.
{"name":"Ada","roles":["developer","reviewer"],"active":true}{
"name": "Ada",
"roles": [
"developer",
"reviewer"
],
"active": true
}Indentasi mengubah tampilan. Nama properti, nilai, dan urutan array tetap sama.
Maksimal masukan UTF-8 5 MiB, keluaran 20 MiB, kedalaman bersarang 128 tingkat, 250.000 token yang dipindai, dan 10 detik per proses. Dokumen besar mungkin memerlukan perangkat yang lebih mumpuni.
Pertanyaan umum
Apakah format otomatis mengubah masukan saya?
Tidak. Fitur ini memperbarui hasil hanya baca setelah jeda singkat, sementara masukan tetap seperti yang Anda tulis. Format otomatis awalnya aktif. Nonaktifkan untuk menjalankan secara manual dengan Format JSON atau Ctrl/⌘ + Enter.
Apa yang terjadi saat JSON saya belum lengkap?
Hasil valid terakhir tetap terlihat saat Anda mengedit. Salin dan Unduh dinonaktifkan hingga masukan dan pengaturan saat ini menghasilkan hasil yang valid. Pilih kesalahan untuk menuju lokasinya di masukan.
Apakah pemformatan membulatkan angka besar atau mengubah escape string?
Tidak. Token angka asli dan penulisan escape string dipertahankan. Ini mencakup bilangan bulat panjang, nol desimal di akhir, notasi eksponen, dan nol negatif. Aplikasi lain mungkin menafsirkan angka tersebut dengan presisi berbeda.
Apakah pengurutan kunci juga mengubah urutan array?
Tidak. Urutkan kunci hanya berlaku secara rekursif pada objek. Array mempertahankan urutannya, dan nama duplikat mempertahankan urutan relatifnya. Pengurutan dinonaktifkan secara bawaan.
Bisakah pemformat memperbaiki komentar atau koma di akhir?
Alat ini menerima JSON ketat dan melaporkan sintaks tidak valid tanpa menebak perbaikannya. Komentar, string bertanda kutip tunggal, kunci tanpa tanda kutip, dan koma di akhir perlu diperbaiki dalam masukan.
Apakah JSON Beautifier sama dengan JSON Formatter?
Ya. Di halaman ini, beautify, pretty-print, dan format semuanya berarti menambahkan indentasi dan pemisah baris agar JSON mudah dibaca. Untuk dokumen yang padat, gunakan Minifier JSON.
Apakah JSON saya keluar dari perangkat?
Teks yang ditempelkan dan file lokal diproses di browser Anda. DevToolsy tidak mengunggah JSON atau menyimpan riwayat dokumen. Salin atau unduh hasil sebelum keluar jika perlu menyimpannya.