Pack Camo

JSON Formatter & Validator

Rapikan, minify, dan validasi JSON dengan baris tepat setiap error. Semuanya berjalan di perangkat Anda — tidak ada yang diunggah.

Masuk
JSON
Keluar
Formatted JSON · minified JSON · error location
JSON valid

Input

164 B · 1 baris

Hasil

221 B (+35%) · 9 kunci · kedalaman 2

{
  "id": 12345678901234567890,
  "name": "Pack Camo",
  "tags": [
    "privacy",
    "offline"
  ],
  "price": 1.50,
  "active": true,
  "owner": {
    "name": "Ada",
    "email": "ada@example.com"
  },
  "notes": null
}

Format, validasi, dan perbaiki JSON di satu tempat

JSON formatter ini mengubah respons API satu baris menjadi JSON berindentasi yang mudah dibaca begitu Anda menempelnya, sekaligus memvalidasinya. Jika JSON rusak, alat ini memberi tahu apa yang salah beserta baris dan kolomnya, menyorot barisnya, dan menawarkan perbaikan untuk penyebab yang umum: koma di akhir, tanda kutip tunggal, kunci tanpa kutip, dan komentar. Anda juga bisa melakukan minify, mengurutkan kunci secara alfabetis di setiap level, serta menyalin atau mengunduh hasilnya. Semuanya berjalan di browser Anda, jadi token, data pelanggan, dan konfigurasi internal tidak pernah meninggalkan perangkat Anda.

Cara format dan validasi JSON

  1. Tempel JSON ke panel kiri, buka berkas .json, atau jatuhkan ke panel.
  2. Baca bilah status: JSON valid, atau error beserta baris dan kolomnya. Tekan Ke error untuk melompat ke sana.
  3. Jika masalahnya koma di akhir, tanda kutip tunggal, kunci tanpa kutip, atau komentar, tekan Perbaiki untuk mengubah teks menjadi JSON yang ketat.
  4. Pilih Beautify dengan 2 spasi, 4 spasi, atau tab, atau Minify, dan aktifkan Urutkan kunci jika Anda ingin urutan yang stabil.
  5. Salin hasilnya, unduh sebagai berkas .json, atau kirim ke alat lain.

Yang membuat JSON valid

JSON (RFC 8259) lebih ketat daripada JavaScript asalnya. Kunci harus berupa string dalam tanda kutip ganda; string juga memakai kutip ganda; tidak ada komentar, tidak ada koma setelah item terakhir, tidak ada undefined, NaN, atau Infinity, dan angka tidak boleh diawali nol atau berupa titik desimal tanpa angka. Validator memeriksa setiap aturan ini dan melaporkan pelanggaran pertama, dengan penjelasan sederhana alih-alih pesan engine yang membingungkan.

Nomor baris dan kolom dihitung mulai dari 1, seperti di editor kode, jadi Anda juga bisa langsung melompat ke titik itu di editor Anda sendiri.

Karakter tak terduga
Sesuatu yang tidak bisa mengawali nilai, seperti huruf nyasar, atau kutip yang hilang sebelumnya di baris itu.
Diharapkan , atau }
Dua properti tanpa koma di antaranya, atau kurung kurawal penutup yang hilang.
Koma di akhir
Koma setelah item terakhir objek atau array, yang dibolehkan JavaScript tetapi tidak oleh JSON.
String tidak ditutup
String tanpa kutip penutup, sering kali karena baris baru di dalam string, yang harus ditulis sebagai \n.

Memperbaiki teks yang hampir JSON

Banyak yang ditempel sebagai JSON sebenarnya objek JavaScript, JSON5, atau berkas konfigurasi berkomentar. Perbaikan mengubahnya menjadi JSON ketat: menghapus komentar // dan /* */, membuang koma di akhir, menulis ulang string 'berkutip-tunggal' dengan kutip ganda, memberi kutip pada kunci polos, dan mengganti True, False, dan None dari Python. Teks dibaca dengan tokenizer, jadi koma dan kutip di dalam string tidak pernah disentuh, dan tata letak baris dipertahankan sehingga error berikutnya tetap menunjuk baris yang benar.

Alat ini sengaja tidak menebak kesalahan struktural seperti koma atau kurung yang hilang. Kesalahan itu punya lebih dari satu kemungkinan perbaikan, jadi validator menunjukkan letaknya kepada Anda.

Memformat tanpa mengubah data Anda

Banyak formatter memproses teks lewat JSON.parse lalu kembali, yang diam-diam membulatkan angka besar (ID seperti 12345678901234567890 kehilangan digit terakhirnya), menulis ulang 1.50 menjadi 1.5, dan memindahkan kunci numerik ke atas setiap objek. Alat ini mem-parse JSON ke pohonnya sendiri yang mempertahankan setiap angka persis seperti tertulis dan setiap kunci dalam urutan aslinya, jadi satu-satunya yang berubah adalah spasi, kecuali Anda meminta kunci diurutkan.

Pengurutan membandingkan kunci berdasarkan code point, seperti jq -S, di setiap level. JSON yang terurut dan berindentasi konsisten paling mudah dibandingkan; untuk melihat apa yang benar-benar berbeda antara dua dokumen gunakan alat JSON diff, dan untuk mengubah JSON ke YAML, CSV, atau TOML gunakan konverter data.

Beautify atau minify?

  • Beautify untuk dibaca, ditinjau, dan di-commit: satu nilai per baris membuat diff di version control kecil dan jelas. Dua spasi adalah indentasi paling umum di proyek JavaScript, empat umum di Python dan Java, dan tab membiarkan setiap pembaca memilih lebarnya.
  • Minify untuk dikirim dan disimpan: membuang spasi biasanya menyusutkan JSON yang dirapikan sebesar 10–30%, dan panel keluaran menampilkan ukuran sebelum dan sesudahnya.
  • Panel keluaran juga menghitung jumlah kunci dan kedalaman nesting, cara cepat memeriksa payload yang belum Anda kenal.

Pertanyaan yang sering diajukan

Bagaimana cara format JSON online?
Tempel JSON ke panel kiri. JSON langsung divalidasi dan dirapikan di panel kanan; pilih 2 spasi, 4 spasi, atau tab, lalu salin atau unduh hasilnya.
Bagaimana cara cek apakah JSON valid?
Tempel lalu baca bilah status. Bilah itu menampilkan JSON valid, atau error pertama beserta baris dan kolomnya, dan Ke error memindahkan kursor ke sana.
Kenapa JSON saya tidak valid?
Penyebab paling umum adalah koma setelah item terakhir, kutip tunggal alih-alih kutip ganda, kunci tanpa kutip, komentar, dan koma yang hilang di antara dua properti. Empat yang pertama bisa diperbaiki dengan tombol Perbaiki.
Apakah JSON boleh berisi komentar?
Tidak. JSON standar tidak punya sintaks komentar. JSONC dan JSON5, yang dipakai sebagian berkas konfigurasi, membolehkannya; tombol Perbaiki menghapusnya untuk menghasilkan JSON standar.
Apakah format mengubah angka atau urutan kunci saya?
Tidak. Angka ditulis persis seperti di input, termasuk bilangan bulat yang sangat besar dan nol di belakang, dan kunci tetap dalam urutan aslinya kecuali Anda mengaktifkan Urutkan kunci.
Bagaimana cara minify JSON?
Pilih Minify. Semua spasi di luar string dibuang, dan panel keluaran menunjukkan seberapa kecil hasilnya.
Apakah JSON saya dikirim ke server?
Tidak. Parsing, validasi, dan format semuanya berjalan di browser Anda. Tidak ada yang diunggah, jadi aman untuk API key, token, dan data pribadi.