본문으로 건너뛰기
가이드

JSON 포맷팅과 검증 완전 가이드

· 6 분 소요

JSON(JavaScript Object Notation)은 데이터 교환의 사실상 표준이 되었습니다. API를 디버깅하거나, 설정 파일을 파싱하거나, 데이터를 전송할 때 JSON은 어디에나 있습니다.

하지만 원시 JSON은 거의 읽을 수 없습니다. 그래서 포맷팅 도구가 필수입니다.

왜 JSON이 눈으로 읽기 어려운가

API는 보통 압축된 JSON을 반환합니다:

{"name":"BoxrTools","tools":[{"slug":"json-formatter","category":"developer"},{"slug":"regex-tester","category":"developer"}],"stats":{"version":1,"free":true}}

기술적으로는 유효하지만, 필드를 찾으려면 중괄호를 세야 합니다.

포맷팅 후:

{
  "name": "BoxrTools",
  "tools": [
    { "slug": "json-formatter", "category": "developer" },
    { "slug": "regex-tester", "category": "developer" }
  ],
  "stats": { "version": 1, "free": true }
}

같은 데이터가 한눈에 보이는 구조가 됩니다.

흔한 JSON 오류 5가지

1. 후행 쉼표

{ "a": 1, "b": 2, }  // ❌ 구문 오류

JSON은 후행 쉼표를 허용하지 않습니다.

2. 작은따옴표

{ 'a': 1 }  // ❌

큰따옴표만 허용됩니다.

3. 인용 부호 없는 키

{ a: 1 }  // ❌
{ "a": 1 }  // ✅

4. undefined 직렬화

JSON.stringify({ a: undefined })  // → '{}'

undefined는 JSON에 존재하지 않으므로 사라집니다.

5. 순환 참조

const a = {}; a.self = a;
JSON.stringify(a);  // ❌ 에러 발생

JSON은 순환 구조를 표현할 수 없습니다.

어떤 들여쓰기를 쓸까

  • 스페이스 2개 — 간결, 깊게 중첩된 데이터에 적합
  • 스페이스 4개 — 더 읽기 쉬움
  • — 개인 취향

정답은 없습니다. 일관성이 중요합니다.

검증 ≠ 포맷팅

검증은 “이게 유효한 JSON인가?”만 묻습니다. 포맷팅은 보기 좋게 만드는 것뿐입니다.

좋은 도구는 둘 다 합니다.

우리 도구를 써보세요

JSON 포맷터 및 검증기 제공 기능:

  • 실시간 검증 + 줄 번호가 포함된 명확한 오류 메시지
  • 3가지 들여쓰기 옵션
  • 키 알파벳순 정렬(선택)
  • 원클릭 압축
  • 100% 브라우저 처리 — 데이터는 기기를 떠나지 않습니다