5 Kesalahan JSON Paling Umum (dan Cara Memperbaikinya)

By Tim JSONValidator.dev 2025-07-04

Pendahuluan: Mengapa Kesalahan JSON Begitu Umum

JSON adalah salah satu format data paling populer untuk API, konfigurasi, dan pertukaran data. Namun, kesalahan kecil saja dalam JSON Anda bisa membuat aplikasi gagal, menghentikan integrasi, atau membuat debugging menjadi sulit. Berikut lima kesalahan JSON paling umum (dengan contoh nyata) dan cara memperbaikinya.

1. Koma Sisa (Trailing Comma)

Dalam JSON, koma tidak diperbolehkan setelah item terakhir dalam objek atau array. Ini adalah kesalahan umum saat mengedit secara manual.

Before:
{
  "name": "Alice",
  "age": 30,
}
After:
{
  "name": "Alice",
  "age": 30
}
Tips: Banyak editor kode (dan alat JSON online kami) akan menandai atau memperbaiki koma sisa secara otomatis.

2. Tanda Kutip Tunggal vs. Ganda

JSON mengharuskan semua kunci dan nilai string menggunakan tanda kutip ganda saja. Tanda kutip tunggal tidak valid.

Before:
{
  'name': 'Bob'
}
After:
{
  "name": "Bob"
}
Jangan gunakan tanda kutip tunggal—meskipun bahasa pemrograman Anda mengizinkannya! Sintaks JSON lebih ketat dibandingkan JavaScript atau Python.

3. Karakter yang Tidak Dielakkan (Unescaped)

Karakter tertentu (seperti baris baru, tab, atau tanda kutip di dalam string) harus dielakkan dengan benar menggunakan backslash.

Before:
{
  "note": "This will break: "hello""
}
After:
{
  "note": "This will work: \"hello\""
}
Jika Anda melihat 'unexpected token' atau 'unterminated string', periksa apakah ada karakter yang belum dielakkan di data Anda.

4. Kurung atau Kurawal yang Hilang

Setiap kurung buka atau kurawal harus memiliki pasangan kurung tutup atau kurawal tutup. Kurung yang hilang atau berlebih akan selalu menyebabkan JSON tidak valid.

Before:
{
  "name": "Eve",
  "items": [1, 2, 3
}
After:
{
  "name": "Eve",
  "items": [1, 2, 3]
}
Gunakan validator JSON online untuk menemukan kurung yang hilang atau berlebih secara instan.

5. Kesalahan Tipe Data

Angka, boolean, dan null tidak boleh dibungkus dengan tanda kutip. Misalnya, 42 valid, tapi "42" adalah string, bukan angka.

  • "true" (string) tidak sama dengan true (boolean)
  • "null" (string) tidak sama dengan null (nilai)
  • "42" (string) tidak sama dengan 42 (angka)
Before:
{
  "age": "42",
  "active": "true"
}
After:
{
  "age": 42,
  "active": true
}

Bagaimana Alat Kami Bisa Membantu

Tempelkan JSON Anda ke validator atau alat perbaikan kami untuk menemukan dan memperbaiki kesalahan ini secara instan. Alat kami akan menunjukkan masalah tepatnya—dan bahkan menyarankan perbaikan otomatis untuk banyak isu umum.