ERROR - Updated 2026-05-14
JSON trailing comma 오류
JSON trailing comma 오류가 나는 이유와 마지막 항목 뒤 쉼표를 찾아 제거하는 방법, JavaScript 객체와 JSON의 차이.
Open JSON Error DoctorJSON trailing comma 오류는 객체나 배열의 마지막 항목 뒤에 쉼표가 남아 있을 때 발생합니다. JavaScript 객체에서는 trailing comma가 허용되는 경우가 있지만, 표준 JSON에서는 허용되지 않습니다. Unexpected token } 또는 Unexpected token ]가 마지막 쉼표 근처에서 난다면 trailing comma를 먼저 의심하세요.
증상
- JSON 검사기에서 마지막 줄 근처에 오류가 표시됩니다.
Unexpected token } in JSON at position ...또는Unexpected token ]...가 납니다.- 코드에서는 자연스럽게 보이지만 API 요청 본문이나 설정 파일에서 실패합니다.
- 복사한 JavaScript 객체를 JSON으로 붙여넣을 때 자주 발생합니다.
원인
JSON은 마지막 항목 뒤 쉼표를 허용하지 않습니다. 다음처럼 마지막 프로퍼티 뒤에 쉼표가 있으면 잘못된 JSON입니다.
{
"name": "Alice",
}
배열에서도 마찬가지입니다.
[
"ko",
"en",
]
바로 해결 방법
- 오류 위치 근처의
}또는]바로 앞을 봅니다. - 마지막 항목 뒤 쉼표가 있으면 제거합니다.
- JavaScript 객체에서 복사한 내용이라면 키와 문자열 따옴표도 함께 확인합니다.
- JSON Error Doctor로 다시 validate합니다.
- API 요청 body라면 전송 전에
JSON.stringify()를 사용했는지 확인합니다.
FixData 도구로 확인하기
JSON Error Doctor에 JSON을 붙여넣으면 trailing comma처럼 위치가 작은 문법 오류를 빠르게 찾을 수 있습니다. 정상으로 바꾼 뒤 pretty format을 적용하면 남은 구조 문제도 보기 쉬워집니다.
도구가 오류 위치를 보여주더라도 주변 줄을 함께 보는 것이 좋습니다. 실제 원인은 표시된 문자 바로 앞 쉼표인 경우가 많습니다.
수동 해결 방법
객체의 마지막 쉼표 제거
잘못된 JSON:
{
"id": 1,
"name": "Alice",
}
올바른 JSON:
{
"id": 1,
"name": "Alice"
}
배열의 마지막 쉼표 제거
잘못된 JSON:
[
"csv",
"json",
]
올바른 JSON:
[
"csv",
"json"
]
코드에서 JSON 만들기
문자열을 직접 이어 붙여 JSON을 만들면 trailing comma가 쉽게 생깁니다. 가능하면 객체를 만든 뒤 JSON.stringify()로 직렬화하세요.
예제
API 요청 body를 직접 문자열로 만든 경우:
const body = `{
"email": "user@example.com",
"name": "Alice",
}`;
JSON.parse(body);
이 코드는 마지막 쉼표 때문에 실패합니다. 객체를 사용하면 실수를 줄일 수 있습니다.
const body = JSON.stringify({
email: "user@example.com",
name: "Alice",
});
자주 하는 실수
- JavaScript 객체에서 되던 문법을 JSON에도 그대로 사용합니다.
- 마지막 쉼표만 제거하고 작은따옴표나 주석 문제는 놓칩니다.
- JSON 설정 파일에 주석과 trailing comma를 함께 넣습니다.
- 오류가 난 위치의 문자만 보고 바로 앞 쉼표를 보지 않습니다.
관련 도구
- JSON Error Doctor: trailing comma와 기본 JSON 문법 오류를 확인할 수 있습니다.
관련 글
- JSON / API Error Center
- JSON Unexpected token 오류
- JSON unexpected end of input
- Unexpected token < in JSON at position 0
- JSON validate와 format의 차이
업데이트 날짜
2026-05-14