JSON 포맷터/뷰어

📋 포맷/변환

JSON 데이터를 예쁘게 들여쓰기하거나 압축하고, 문법 오류도 점검합니다.

JSON 포맷터란?

JSON 데이터를 한 번에 정렬·검증·압축하는 도구입니다. 압축된 JSON을 2/4 스페이스 또는 탭으로 정렬(Prettify)하거나, 공백을 제거해 압축(Minify)합니다. API 응답 분석, 설정 파일 편집, 데이터베이스 레코드 확인, 디버깅에 필수적인 도구입니다.

주요 기능

정렬 (Prettify)

압축된 JSON을 2/4 스페이스 또는 탭 들여쓰기로 정렬

압축 (Minify)

공백과 줄바꿈을 제거하여 파일 크기 최소화

유효성 검사

JSON 문법 오류를 위치와 원인과 함께 감지

실시간 변환

입력과 동시에 자동 포맷팅 (300ms 디바운스)

JSON 문법 규칙

  • 키는 반드시 큰따옴표로 감싸야 합니다 (작은따옴표 불가)
  • 문자열 값은 큰따옴표 사용, 숫자/불리언/null은 따옴표 없이
  • 마지막 항목 뒤에 쉼표(trailing comma) 불가
  • 주석 사용 불가 (JSON5, JSONC는 지원)

⚠️ 자주 하는 실수

JavaScript 객체 리터럴({key: 'val'})을 JSON으로 착각하는 경우가 가장 많습니다. JSON은 항상 큰따옴표({"key":"val"})만 허용합니다.

⚖️ JSON vs XML vs YAML 비교

항목JSONXMLYAML
가독성보통낮음 (태그 많음)높음 (들여쓰기 기반)
파일 크기작음큼 (태그 오버헤드)가장 작음
주석 지원불가가능가능
배열 표현네이티브 지원반복 태그- 기호
주 사용처API, 웹 통신문서, SOAP, 설정설정 파일 (K8s, CI/CD)
파싱 속도빠름느림보통

🚨 자주 발생하는 JSON 오류 TOP 5

  • Trailing Comma: 마지막 항목 뒤에 쉼표 ({"a":1,}) — JSON은 trailing comma를 허용하지 않음
  • 작은따옴표 사용: 키/값에 작은따옴표 ({'name':'홍길동'}) — 반드시 큰따옴표만 사용
  • undefined / NaN / Infinity: JavaScript에는 있지만 JSON에는 없는 값 — null로 대체
  • 주석 포함: // 주석이나 /* */ — 표준 JSON은 주석 불가 (JSONC 사용 필요)
  • 따옴표 없는 키: {name: "값"} — JavaScript 객체 문법이지 JSON이 아님

자주 묻는 질문

JSON과 JavaScript 객체의 차이는?

JSON은 데이터 교환 형식으로 키에 반드시 큰따옴표를 사용해야 하며, 함수/undefined/주석을 지원하지 않습니다. JavaScript 객체는 더 유연하지만 JSON으로 직렬화할 때는 규칙을 따라야 합니다.

들여쓰기는 몇 칸이 좋나요?

공식 표준은 없습니다. 2칸이 가장 일반적이고, 4칸도 많이 사용됩니다. 프로젝트의 코딩 컨벤션을 따르세요.

JSON에 주석을 넣을 수 있나요?

표준 JSON은 주석을 지원하지 않습니다. 설정 파일에는 JSONC(JSON with Comments)나 JSON5 형식을 사용하거나, "_comment" 키를 활용하는 방법이 있습니다.

관련 도구

광고