Bandingkan
JSON5 atau JSON
JSON5 mempertahankan model data JSON sambil menambah kemudahan penulisan manual seperti komentar, kunci identifier, tanda kutip tunggal, koma akhir, dan angka heksadesimal. JSON standar memiliki sintaks lebih ketat dan didukung luas oleh API serta parser umum.
Format mana yang sebaiknya dipilih?
Pertimbangkan JSON5 untuk konfigurasi yang diedit manusia hanya jika semua konsumen mendukungnya. Gunakan JSON untuk API, parser standar, dan interoperabilitas luas.
Cocok untuk Format pertukaran data JSON5
File konfigurasi yang diedit manual · Data terstruktur dengan komentar
- Data yang mudah dibaca jika parser mendukung JSON5
- Pengaturan aplikasi dengan dukungan JSON5 terkonfirmasi
Cocok untuk JSON
API web, file konfigurasi, dan pertukaran data
- Mengirim data terstruktur
Informasi dasar
| Item | Format pertukaran data JSON5 | JSON |
|---|---|---|
| Ekstensi | .json5 | .json |
| Tipe MIME | application/json | application/json |
| Penggunaan umum | File konfigurasi yang diedit manual · Data terstruktur dengan komentar | API web, file konfigurasi, dan pertukaran data |
| Cara membuka | Memerlukan parser atau alat yang mendukung JSON5 | Buka dalam editor teks, IDE, atau penampil yang mendukung JSON. |
| Ekspor atau konversi | Buka dengan editor atau parser yang secara eksplisit mendukung JSON5. Parser JSON standar dapat gagal pada komentar atau koma penutup. | Aplikasi atau alat konversi dapat mengubahnya ke format seperti CSV. |
Pilih menurut penggunaan
Data yang mudah dibaca jika parser mendukung JSON5
File konfigurasi yang diedit manual · Data terstruktur dengan komentar
Format pertukaran data JSON5Pengaturan aplikasi dengan dukungan JSON5 terkonfirmasi
File konfigurasi yang diedit manual · Data terstruktur dengan komentar
Format pertukaran data JSON5Mengirim data terstruktur
API web, file konfigurasi, dan pertukaran data
JSONPoin utama 1
JSON5 menerima komentar, kutip tunggal, kunci identifier tanpa kutip, koma akhir, nilai heksadesimal, serta sintaks Infinity/NaN. Ini bukan bagian tata bahasa JSON RFC 8259 dan dapat ditolak parser standar.
Perbedaan lebih lanjutPoin utama 2
JSON5 adalah superset sintaksis dengan model dasar object, array, string, angka, boolean, dan null yang sama, tetapi memerlukan parser yang mendukung JSON5. Jangan menyimpulkan kompatibilitas dari ekstensi atau tipe media.
Perbedaan lebih lanjutPerbedaan lebih lanjut
Pilih JSON5 jika komentar dan sintaks longgar memudahkan pengelolaan konfigurasi manual dan semua alat secara eksplisit mem-parsenya. Pilih JSON untuk komunikasi dan pertukaran umum. Saat konversi, tentukan representasi angka non-JSON dan validasi keluaran sebagai JSON ketat.
- Parser JSON standar dapat menolak teks JSON5 yang valid. Periksa parser, editor, alat build, atau konsumen API yang benar-benar dipakai.
- Konversi ke JSON menghilangkan komentar dan maksud pemformatan. Infinity dan NaN tidak memiliki representasi angka JSON langsung; penggantinya ditentukan aplikasi.
- Setelah konversi, uji kunci duplikat, rentang dan presisi angka, encoding karakter, batas parser, serta kepatuhan JSON final.
Pertanyaan umum
Bisakah file JSON5 dikirim ke API JSON mana pun?
Tidak dengan aman. JSON5 mengizinkan sintaks di luar JSON standar. Parse dengan alat JSON5 lalu serialisasikan JSON ketat jika API mengharapkan RFC 8259.