Formatter JSON
Pretty print, minify, dan cek JSON secara instan.
Jalan di browser kamu. Apa pun yang kamu ketik tidak dikirim ke mana pun.
- Lokasi error yang pasti
- Tampilan tree yang bisa dilipat
- Tidak ada yang diupload
Cara memformat JSON
- Tempel atau upload JSON kamu.
- Pilih pretty print atau minify, dan ukuran indent.
- Salin atau unduh hasilnya.
Pretty print vs minify
| Pretty print | Minify | |
|---|---|---|
| Whitespace | Menambah indentasi dan baris baru | Menghapus semuanya |
| Ukuran file | Lebih besar, lebih mudah dibaca | Sekecil mungkin, data sama |
| Cocok untuk | Editing dan debugging | API production dan penyimpanan |
Error JSON yang umum dan cara memperbaikinya
| Error | Perbaikan |
|---|---|
| Koma berlebih sebelum } atau ] | Hapus koma terakhir di daftar |
| Tanda kutip tunggal di sekitar string | Ganti ke tanda kutip ganda saja |
| Nama properti tanpa tanda kutip | Bungkus setiap key dengan tanda kutip ganda |
| Komentar // atau /* | Hapus; JSON tidak punya sintaks komentar |
| Kurung tutup atau kurung kurawal hilang | Hitung ulang pasangan { } dan [ ] kamu |
| Angka seperti 1. atau .5 | Tulis 1.0 atau 0.5; JSON butuh digit di kedua sisi titik desimal |
| Baris baru mentah di dalam string | Escape sebagai \n, karena newline literal di dalam tanda kutip tidak diizinkan |
Aturan sintaks JSON, dari RFC 8259
- Angka tidak boleh punya nol di depan (01 tidak valid) atau titik desimal di akhir tanpa angka (1. tidak valid).
- Setiap key harus berupa string dalam tanda kutip ganda. Key tanpa tanda kutip dan shorthand property ala JavaScript bukan JSON yang valid.
- Satu-satunya literal yang diizinkan di luar tanda kutip adalah true, false, dan null, semuanya huruf kecil.
- String hanya boleh memakai tanda kutip ganda; tanda kutip tunggal dan backtick adalah fitur JavaScript yang tidak termasuk dalam JSON.
- Key duplikat dalam satu object secara teknis diizinkan oleh gramatikanya, tapi kebanyakan parser, termasuk yang ini, hanya menyimpan nilai terakhir, jadi jangan mengandalkan keduanya terbaca.
FAQ Formatter JSON
Kenapa JSON-ku menunjukkan error di baris yang kelihatannya baik-baik saja?
Parser melaporkan di mana ia berhenti, yang sering kali satu karakter setelah kesalahan sebenarnya, seperti koma yang hilang di baris sebelumnya. Cek juga baris tepat sebelum yang ditampilkan.
Apa fungsi urutkan key?
Fitur ini mengurutkan ulang key tiap object secara alfabetis sebelum ditampilkan, sehingga lebih mudah membandingkan dua file JSON atau mencari field tertentu.
Bisakah aku memformat file JSON yang sangat besar?
Bisa, tapi tampilan tree yang bisa dilipat hanya dibuat untuk input di bawah 300 KB. File yang lebih besar tetap bisa diformat dan di-minify, hanya tanpa tree-nya.
Apa bedanya minify dan pretty print?
Pretty print menambahkan baris baru dan indentasi supaya mudah dibaca. Minify menghapus semuanya supaya filenya sekecil mungkin untuk production.
Apa sebenarnya yang diwajibkan standar JSON, RFC 8259?
RFC ini mendefinisikan gramatika JSON secara pasti: object dan array, string dalam tanda kutip ganda, angka tanpa nol di depan, dan literal true, false, dan null. Apa pun di luar gramatika itu, seperti komentar atau koma berlebih, adalah JSON yang tidak valid walau sebagian parser diam-diam menerimanya.
Bisakah aku memformat file JSON5 atau JSONC yang mengizinkan komentar?
Tidak. Komentar dan koma berlebih, yang umum di file konfigurasi JSONC yang dipakai sebagian editor, bukan JSON yang valid dan akan dilaporkan sebagai error di sini. Hapus dulu kalau kamu bekerja dengan salah satu format longgar itu.
Bisakah aku membuka semua node di tampilan tree sekaligus?
Bisa, klik Buka semua. Dokumen besar dimulai dengan hanya level pertama atau kedua yang terbuka supaya tetap cepat; Buka semua membuka semua node yang tersisa sesuai permintaan.
Bisakah aku unduh hasil yang sudah diformat sebagai file?
Bisa. Tombol Unduh menyimpan output saat ini, baik pretty printed maupun minified, sebagai file .json, dinamai sesuai file yang kamu upload atau "formatted.json" kalau kamu menempel teksnya langsung.