5 Lỗi JSON Phổ Biến Nhất (và Cách Sửa Chữa)

By Nhóm JSONValidator.dev 2025-07-04

Giới Thiệu: Tại Sao Lỗi JSON Lại Phổ Biến

JSON là định dạng dữ liệu phổ biến cho API, cấu hình và trao đổi dữ liệu. Tuy nhiên, chỉ một lỗi nhỏ trong JSON cũng có thể phá vỡ ứng dụng, làm gián đoạn tích hợp hoặc khiến việc gỡ lỗi trở nên khó khăn. Dưới đây là năm lỗi JSON phổ biến nhất (có ví dụ thực tế) và cách khắc phục.

1. Dấu Phẩy Cuối Thừa

Trong JSON, dấu phẩy không được phép xuất hiện sau phần tử cuối cùng trong đối tượng hoặc mảng. Đây là lỗi phổ biến khi chỉnh sửa thủ công.

Before:
{
  "name": "Alice",
  "age": 30,
}
After:
{
  "name": "Alice",
  "age": 30
}
Mẹo: Nhiều trình soạn thảo code (và cả công cụ JSON trực tuyến của chúng tôi) sẽ đánh dấu hoặc tự động sửa dấu phẩy cuối thừa.

2. Dấu Nháy Đơn và Nháy Kép

JSON yêu cầu tất cả khóa và giá trị chuỗi phải được bao bởi dấu nháy kép. Dấu nháy đơn không hợp lệ.

Before:
{
  'name': 'Bob'
}
After:
{
  "name": "Bob"
}
Không sử dụng dấu nháy đơn—dù ngôn ngữ lập trình của bạn có cho phép! Cú pháp JSON nghiêm ngặt hơn so với JavaScript hoặc Python.

3. Ký Tự Chưa Được Xử Lý Escape

Một số ký tự (như xuống dòng, tab hoặc dấu nháy trong chuỗi) phải được xử lý escape đúng cách bằng dấu gạch chéo ngược (\).

Before:
{
  "note": "This will break: "hello""
}
After:
{
  "note": "This will work: \"hello\""
}
Nếu bạn thấy lỗi 'ký tự không hợp lệ' hoặc 'chuỗi chưa kết thúc', hãy kiểm tra xem có ký tự escape nào bị thiếu trong dữ liệu không.

4. Thiếu Dấu Ngoặc hoặc Dấu Nhọn

Mỗi dấu ngoặc mở phải có dấu đóng tương ứng. Thiếu hoặc thừa dấu ngoặc luôn gây ra JSON không hợp lệ.

Before:
{
  "name": "Eve",
  "items": [1, 2, 3
}
After:
{
  "name": "Eve",
  "items": [1, 2, 3]
}
Sử dụng công cụ kiểm tra JSON trực tuyến để nhanh chóng phát hiện dấu ngoặc thiếu hoặc thừa.

5. Lỗi Kiểu Dữ Liệu

Số, boolean và null không được đặt trong dấu nháy. Ví dụ, 42 là hợp lệ, nhưng "42" là chuỗi, không phải số.

  • "true" (chuỗi) không giống true (kiểu boolean)
  • "null" (chuỗi) không giống null (giá trị null)
  • "42" (chuỗi) không giống 42 (số)
Before:
{
  "age": "42",
  "active": "true"
}
After:
{
  "age": 42,
  "active": true
}

Công Cụ Của Chúng Tôi Giúp Bạn Như Thế Nào

Dán JSON của bạn vào trình kiểm tra JSON hoặc công cụ sửa lỗi của chúng tôi để phát hiện và sửa những lỗi này ngay lập tức. Công cụ sẽ chỉ rõ lỗi cụ thể—và đề xuất sửa tự động cho nhiều vấn đề phổ biến.