5 Kesilapan JSON Paling Lazim (dan Cara Membetulkannya)

By Pasukan JSONValidator.dev 2025-07-04

Pengenalan: Mengapa Kesilapan JSON Sangat Lazim

JSON adalah salah satu format data paling popular untuk API, konfigurasi, dan pertukaran data. Namun, walaupun kesilapan kecil dalam JSON anda boleh menyebabkan aplikasi rosak, integrasi terhenti, atau membuat proses pembaikan menjadi rumit. Berikut adalah lima kesilapan JSON paling biasa (dengan contoh sebenar) dan cara membetulkannya.

1. Koma Ekor

Dalam JSON, koma tidak dibenarkan selepas item terakhir dalam objek atau array. Ini adalah kesilapan biasa apabila mengedit secara manual.

Before:
{
  "name": "Alice",
  "age": 30,
}
After:
{
  "name": "Alice",
  "age": 30
}
Tip: Banyak editor kod (dan alat JSON dalam talian kami) akan menonjolkan atau membetulkan koma ekor secara automatik.

2. Tanda Petik Tunggal vs. Berganda

JSON memerlukan semua kekunci dan nilai rentetan menggunakan tanda petik berganda sahaja. Tanda petik tunggal tidak sah.

Before:
{
  'name': 'Bob'
}
After:
{
  "name": "Bob"
}
Jangan gunakan tanda petik tunggal—walaupun bahasa pengaturcaraan anda membenarkannya! Sintaks JSON lebih ketat daripada JavaScript atau Python.

3. Aksara Tidak Ber-escape

Beberapa aksara (seperti baris baru, tab, atau tanda petik dalam rentetan) mesti di-escape dengan betul menggunakan backslash.

Before:
{
  "note": "This will break: "hello""
}
After:
{
  "note": "This will work: \"hello\""
}
Jika anda melihat 'token tidak dijangka' atau 'rentetan tidak berakhir', periksa escapes yang hilang dalam data anda.

4. Kurungan atau Kurungan Tepi Hilang

Setiap kurungan atau kurungan tepi pembuka mesti dipadankan dengan yang menutup. Kurungan hilang atau berlebihan akan menyebabkan JSON tidak sah.

Before:
{
  "name": "Eve",
  "items": [1, 2, 3
}
After:
{
  "name": "Eve",
  "items": [1, 2, 3]
}
Gunakan validator JSON dalam talian untuk mengesan kurungan yang hilang atau berlebihan dengan segera.

5. Kesilapan Jenis Data

Nombor, boolean, dan null tidak perlu dibalut dalam tanda petik. Contohnya, 42 sah, tetapi "42" adalah rentetan, bukan nombor.

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

Bagaimana Alat Kami Membantu

Tampal JSON anda ke dalam validator atau alat pembaikan kami untuk mengesan dan membaiki ralat ini dengan segera. Alat kami akan menunjukkan masalah tepat—dan bahkan mencadangkan pembaikan automatik untuk banyak isu biasa.