JSON 포맷터 및 검증기

JSON 데이터를 온라인으로 포맷, 정리, 검증합니다. 압축 및 사용자 정의 들여쓰기를 지원합니다.

사용 방법

  1. JSON 데이터를 입력 영역에 붙여넣습니다
  2. 「포맷」으로 정렬하거나 「압축」으로 최소화합니다
  3. 포맷된 결과를 복사하거나 파일로 다운로드합니다

자주 묻는 질문

  • JSON이란 무엇인가요?

    JSON(JavaScript Object Notation)은 경량 데이터 교환 형식입니다. 사람이 읽고 쓰기 쉽고, 기계가 분석하고 생성하기도 쉽습니다.

  • JSON을 검증하려면 어떻게 하나요?

    JSON을 입력 필드에 붙여넣고 「포맷」을 클릭합니다. JSON이 유효하지 않으면 구문 오류의 정확한 위치를 나타내는 오류 메시지가 표시됩니다.

  • 대용량 JSON 파일도 포맷할 수 있나요?

    네, 이 도구는 브라우저에서 완전히 실행되며 서버에 데이터를 전송하지 않고 수 메가바이트까지의 JSON 파일을 처리할 수 있습니다.

  • 어떤 들여쓰기 옵션을 사용할 수 있나요?

    JSON 포맷 시 공백 2개, 공백 4개, 또는 탭 들여쓰기 중에서 선택할 수 있습니다.

JSON이란 무엇인가

JSON(JavaScript Object Notation)은 1990년대 후반 더글라스 크록포드(Douglas Crockford)가 고안한 경량 데이터 교환 형식입니다. 원래 JavaScript에서 유래했지만 현재는 언어에 독립적인 표준 형식으로 자리 잡았습니다. Python, Java, Go, Ruby 등 사실상 모든 프로그래밍 언어에서 네이티브로 JSON을 처리할 수 있습니다.

JSON은 두 가지 핵심 데이터 구조를 기반으로 합니다. 첫째는 키-값 쌍의 집합인 **객체(Object)**이며 중괄호 {}로 표현됩니다. 둘째는 순서가 있는 값의 목록인 **배열(Array)**이며 대괄호 []로 표현됩니다. 값으로는 문자열, 숫자, 불리언(true/false), null, 중첩 객체, 배열을 사용할 수 있습니다.

포맷팅이 필요한 이유

실제 환경에서 JSON 데이터는 흔히 압축된(minified) 형태로 전송됩니다. 네트워크 전송 크기를 줄이기 위해 불필요한 공백과 줄바꿈이 모두 제거되기 때문입니다. 그 결과 API 응답이나 로그에서 다음과 같이 한 줄로 이어진 JSON을 자주 마주치게 됩니다.

{"user":{"id":1,"name":"김철수","roles":["admin","editor"],"active":true}}

이런 형태는 기계가 처리하기에는 문제없지만, 사람이 읽고 구조를 파악하기는 매우 어렵습니다. 포맷팅 도구를 사용하면 들여쓰기와 줄바꿈이 추가되어 계층 구조가 명확하게 드러납니다.

개발 및 디버깅에서의 활용

API 응답 분석

REST API나 GraphQL API를 테스트할 때 응답 JSON을 포맷터에 붙여넣으면 데이터 구조를 빠르게 파악할 수 있습니다. 특히 중첩이 깊은 객체나 배열이 많은 응답에서 효과적입니다.

구문 오류 빠른 탐지

JSON은 구문이 엄격합니다. 마지막 요소 뒤의 쉼표(trailing comma), 작은따옴표 사용, 키에 따옴표 누락 등 사소한 실수 하나로 전체 파싱이 실패합니다. 포맷터에 내장된 유효성 검사 기능은 오류 위치를 정확히 짚어주므로 디버깅 시간을 크게 단축합니다.

설정 파일 관리

package.json, tsconfig.json, manifest.json 등 프론트엔드 개발에서 사용되는 수많은 설정 파일이 JSON 형식을 사용합니다. 포맷터를 통해 일관된 스타일을 유지하면 팀 협업 시 코드 리뷰 충돌을 줄일 수 있습니다.

베스트 프랙티스

  • 개발 환경에서는 Pretty Print — 가독성을 위해 들여쓰기 2칸 또는 4칸을 사용하세요.
  • 프로덕션 전송은 압축 — 네트워크 비용 절감을 위해 minified JSON을 사용하세요.
  • 일관된 들여쓰기 유지 — 팀 내에서 탭과 스페이스를 혼용하지 않도록 Lint 규칙을 설정하세요.
  • 민감 정보 주의 — 클라이언트에게 전달되는 JSON에 비밀번호, API 키 등이 포함되지 않도록 항상 확인하세요.