JSON 포매터이란?
JSON Formatter는 원시 또는 압축된 JSON에 들여쓰기를 추가해 읽기 쉽게 만들거나 한 줄로 압축합니다. JSON 구문을 검증하고 줄 번호와 함께 오류를 표시해 API 디버깅과 데이터 확인에 도움이 됩니다.
포매터는 내장된 JSON.parse 로 파싱한 뒤 선택한 들여쓰기(2 스페이스, 4 스페이스, 탭)로 다시 직렬화합니다. 트리 보기는 중첩 객체와 배열을 접을 수 있는 노드로 보여 줘, 깊이 있는 API 응답도 길게 스크롤하지 않고 파고들 수 있습니다. 오류 메시지에는 문제 행과 짧은 설명이 함께 나오므로 빠르게 고칠 수 있습니다.
사용 방법
- 1단계 — 입력 영역에 JSON 문자열을 붙여 넣습니다. 구문 오류가 입력 중 강조 표시됩니다.
- 2단계 — 들여쓰기 크기(2칸 또는 4칸, 탭)를 선택하고 형식화를 클릭해 보기 좋은 출력을 얻거나, 압축을 클릭해 한 줄로 만듭니다.
- 3단계 — 포맷된 결과를 복사하거나 .json 파일로 내려받습니다. 트리 보기로 중첩 키를 살펴보고, 검색창에 입력하면 원하는 필드로 바로 이동할 수 있습니다.
사용 시기
- curl이나 fetch 디버그 로그에 한 줄로 압축된 API 응답을 포맷팅 후 읽을 때.
- 배포 단계에서 거부되기 전에, 설정 파일에 남은 쉼표 하나나 따옴표 없는 키를 찾아낼 때.
- 큰 픽스처 파일을 저장소에 커밋하기 전에 minify 해서 diff와 번들 크기를 줄일 때.
결과
API가 압축된 500줄짜리 JSON 응답을 반환합니다. 붙여 넣고 2칸 들여쓰기를 선택하면 접을 수 있는 중첩 구조가 표시됩니다. user.preferences.notifications 경로를 몇 초면 찾을 수 있습니다.
자주 묻는 질문
- 겉보기에는 멀쩡한데 왜 JSON이 유효하지 않다고 나오나요?
- JSON은 따옴표와 쉼표에 엄격합니다. 키는 큰따옴표("name", 'name' 아님)로 감싸야 하고, 마지막 요소 뒤의 쉼표는 허용되지 않으며, 주석도 규격에 없습니다. 오류 메시지는 파싱이 처음 실패한 줄 번호를 알려 줍니다.
- JSON 포매팅과 미니파이의 차이는 무엇인가요?
- 포매팅은 들여쓰기와 줄바꿈을 더해 구조를 눈으로 따라가기 쉽게 만듭니다. 미니파이는 모든 공백을 제거하고 한 줄로 만들어 네트워크 전송이 빠르고 디스크도 적게 씁니다. 파싱하면 데이터는 똑같습니다.
- 아주 큰 JSON 파일도 처리할 수 있나요?
- 가능합니다. 모든 처리가 로컬에서 일어나므로 현대 기기에서는 몇 MB 정도면 1초가 채 안 걸려 파싱됩니다. 잎 노드가 수만 개인 객체는 트리 보기가 메모리를 더 쓰는데, 텍스트 보기로 돌아가면 가벼워집니다.
- 들여쓰기는 2 스페이스, 4 스페이스, 탭 중 무엇이 좋을까요?
- JavaScript와 설정 저장소는 대부분 2 스페이스를 기본으로 쓰며 Prettier와 Node 생태계 관습과 맞아떨어집니다. Java와 Python 커뮤니티에서는 4 스페이스가 흔합니다. 탭은 협업자가 각자 표시 폭을 정하고 싶을 때 유용합니다.
- 키를 알파벳순으로 정렬할 수 있나요?
- 네. 「포맷」이나 「압축」을 누르기 전에 「키 정렬」 체크박스를 켜면 모든 객체의 키가 알파벳순으로 다시 출력됩니다. 배열의 순서는 유지됩니다. 안정적인 diff를 만들거나 손으로 작성한 설정 파일을 정리할 때 유용합니다.