25 Kesalahan JSON yang Dilakukan Setiap Developer
JSON adalah tulang punggung komunikasi web. JSON bersifat ringan dan mudah dibaca. Namun, aturannya sangat ketat. Kesalahan kecil dapat merusak kode Anda.
Hindari kesalahan umum ini untuk menulis struktur data yang lebih baik.
Kesalahan Sintaksis
- Gunakan tanda kutip ganda saja. Tanda kutip tunggal berfungsi di JavaScript tetapi gagal di JSON.
- Hapus koma di akhir (trailing commas). Koma setelah item terakhir dapat menyebabkan crash.
- Tambahkan koma yang hilang. Setiap pasangan key-value membutuhkan koma di antaranya.
- Beri tanda kutip pada semua key. Setiap key harus diapit oleh tanda kutip ganda.
- Cocokkan tanda kurung Anda. Jangan gunakan kurung kurawal di tempat yang seharusnya menggunakan kurung siku.
Kesalahan Tipe Data
- Tangani nilai undefined. JSON tidak mendukung undefined. Gunakan null sebagai gantinya.
- Hindari NaN dan Infinity. Nilai-nilai ini akan berubah menjadi null selama proses serialisasi.
- Ingat format Date. JSON memperlakukan tanggal sebagai string. Anda harus menguraikannya kembali menjadi objek Date.
- Gunakan angka basis-10. Jangan gunakan format heksadesimal atau oktal.
- Jangan simpan fungsi. JSON hanya untuk data statis.
- Hindari komentar. JSON tidak mengizinkan komentar // atau /* */.
- Escape tanda kutip ganda. Gunakan backslash untuk menyertakan tanda kutip di dalam string.
- Gunakan \n untuk baris baru. Anda tidak bisa menekan enter di dalam nilai string.
- Escape backslash. Gunakan \ untuk path atau pola regex.
Kesalahan Lingkungan dan Logika
- Periksa input Anda. Jangan masukkan objek ke dalam JSON.parse().
- Perhatikan penggunaan huruf besar/kecil (casing). "userId" dan "userid" adalah key yang berbeda.
- Jangan mengandalkan urutan. JSON tidak menjamin urutan key.
- Jangan pernah gunakan eval(). Gunakan JSON.parse() untuk mencegah risiko keamanan.
- Lindungi angka besar. Kirimkan ID 64-bit sebagai string untuk menghindari hilangnya presisi.
- Gunakan blok try...catch. JSON yang tidak valid akan membuat aplikasi Anda crash jika Anda tidak menangkap error-nya.
- Perbaiki referensi melingkar (circular references). Anda tidak dapat melakukan stringify pada objek yang merujuk kembali ke dirinya sendiri.
- Ketahui perbedaannya. JSON lebih restriktif daripada objek JavaScript standar.
- Hindari string kosong. Gunakan {} atau [] sebagai gantinya daripada "".
Cara agar tetap aman:
- Gunakan validator untuk memeriksa sintaksis Anda.
- Gunakan Prettier di editor Anda untuk memformat file secara otomatis.
- Selalu bungkus logika parsing dalam blok try...catch.
Sumber: https://dev.to/jsdevspace/25-json-mistakes-every-developer-makes-36e6
