유틸리티

JSON 정렬, 검증, 압축 한 번에 하는 법

API에서 받아온 JSON 응답이 한 줄짜리 문자열로 쏟아진다. 중괄호, 대괄호, 쉼표가 끝없이 이어지는 걸 눈으로 파싱하기란 불가능에 가깝다. 들여쓰기 하나만 넣어도 구조가 한눈에 보이는데, 매번 에디터에서 정리하기도 번거롭다.

JSON을 다루다 자주 겪는 문제

  1. 가독성 부족: 압축된 JSON은 사람이 읽기 어렵다. 디버깅할 때 원하는 키를 찾으려면 정렬부터 해야 한다.
  2. 문법 오류: 쉼표 하나 빠지거나, 따옴표가 안 닫히거나, 후행 쉼표(trailing comma)가 들어가면 파싱이 실패한다. 에러 메시지만으로는 위치를 특정하기 어려울 때가 많다.
  3. 파일 크기: 설정 파일이나 로그를 JSON으로 저장할 때, 들여쓰기가 포함되면 용량이 불필요하게 커진다.

JSON 작업별 처리 방법

정렬 (Prettify)

한 줄짜리 JSON에 들여쓰기와 줄바꿈을 넣어 트리 구조로 펼치는 작업이다. 들여쓰기 크기는 보통 2칸 또는 4칸을 쓴다.

{"name":"홍길동","age":30,"skills":["JS","Python"]}

위 코드를 정렬하면 아래처럼 된다.

{
  "name": "홍길동",
  "age": 30,
  "skills": [
    "JS",
    "Python"
  ]
}

압축 (Minify)

반대로, 정렬된 JSON에서 공백과 줄바꿈을 모두 제거해 한 줄로 만든다. 네트워크 전송이나 저장 용량을 줄여야 할 때 쓴다.

검증 (Validate)

JSON 문법이 올바른지 확인하고, 오류가 있으면 몇 번째 줄, 몇 번째 문자에서 문제가 발생했는지 알려준다.

브라우저에서 바로 처리하기

JSON 포맷터에 코드를 붙여넣고 버튼 하나만 누르면 정렬, 압축, 검증이 된다. 키를 알파벳순으로 재배열하는 기능도 있어서 두 JSON 파일을 비교할 때 유용하다. 통계로 파일 크기, 중첩 깊이, 키 개수까지 보여주니 대략적인 구조 파악이 빠르다.

TIP JSON에서 가장 흔한 실수는 마지막 항목 뒤에 쉼표를 넣는 것이다. JavaScript 객체에서는 허용되지만 JSON 표준에서는 문법 오류다. 검증 기능으로 한 번 돌려보면 이런 실수를 잡을 수 있다.

JSON 파일이 복잡해질수록 수작업 정리는 실수를 부른다. 자동화된 도구로 정렬하고 검증하는 습관을 들이면 디버깅 시간이 줄어든다.