Toolify

JSON 포매터 & 미니파이어 (검증 + 정렬)

JSON 붙여넣어 2/4/8 공백 들여쓰기로 형식화 또는 한 줄로 압축. 잘못된 JSON은 파싱 오류 표시해 빠르게 문제 찾기.

형식화된 출력
{
  "hello": "world",
  "items": [
    1,
    2,
    3
  ]
}
입력: 38 바이트 · 출력: 60 바이트

작동 방식

본 도구가 하는 일

JSON은 엄격한 형식 — 모든 따옴표, 콤마, 괄호가 올바른 위치 필요. 뭔가 잘못되면 브라우저와 API가 알 수 없는 'Unexpected token' 메시지 반환, 문제는 종종 한눈에 보이지 않음. 본 포매터는 브라우저 네이티브 JSON 파서로 입력 파싱 후 예쁘게(들여쓰기 포함) 또는 압축(공백 없이) 다시 직렬화.

파싱 실패 시 기본 오류 직접 받음 — 보통 잘못된 문자 위치 포함. 거기서 누락된 콤마, 이스케이프되지 않은 따옴표, 후행 콤마 빠르게 찾기 가능.

형식화 vs 압축

들여쓰기 형식화: JSON 읽는 표준 방식. 2 공백이 JavaScript 영역에서 관습; 4 공백이 Python과 Java 컨텍스트에서 흔함. 프로젝트가 사용하는 것 선택.

압축: 공백 없이 한 줄로 축소. URL, 환경 변수, 공백 중요한 곳에 JSON 임베딩 시 유용. 크기 차이 의미 있음: 일반 정렬된 구성 파일이 압축되면 20-40% 줄어듦.

흔한 JSON 함정

후행 콤마. JavaScript에서 허용, JSON에서 안 됨. {a:1, b:2,}는 코드 에디터에서 파싱되지만 와이어로 보내면 실패.

단일 따옴표. JSON은 키와 문자열 값 모두 이중 따옴표 요구. {'a': 1}은 유효하지 않은 JSON. {"a": 1}이 올바름.

주석. JSON은 주석 없음. JSON 내 //나 /* */는 파싱 깨짐. JSONC(VS Code 구성 사용)는 주석 지원하지만 표준 JSON 아님.

숫자. JSON은 NaN이나 Infinity 미지원. null 사용하거나 다운스트림 소비자에 따라 문자열로 래핑.

자주 묻는 질문

JSONC(주석 있는 JSON) 지원?

아직. 주석 먼저 제거하거나 JSONC 지원 도구 사용.

크기 제한?

현대 브라우저는 메가바이트 JSON 처리, ~1MB 넘으면 텍스트 영역 느려질 수 있음. 거대 파일은 데스크톱 도구 사용.

왜 본 JSON이 유효하지 않나?

가장 자주: 후행 콤마, 단일 따옴표, 또는 문자열 내 이스케이프 안 된 따옴표. 파서 오류가 문제 감지된 열 가리킴.

키를 알파벳순 정렬 가능?

이 버전에서 안 됨. 정렬 인식 도구(--sort-keys 있는 jq 같은)에 붙여넣기가 가장 깔끔; 나중에 옵션 추가 가능.

깊이 중첩된 JSON 처리?

네. 브라우저 JSON 파서가 어떤 실용적 깊이 처리.

왜 압축이 1MB 파일을 1바이트로 안 만드나?

압축은 공백만 제거. 실제 데이터 여전히 거기. 실제 크기 감소는 gzip 또는 MessagePack 같은 이진 형식 사용.

데이터가 전송되나요?

전송되지 않습니다. 모든 파싱과 형식화 브라우저에서 발생.

JSON Schema 검증은?

이 도구는 구문만 검증. 스키마 검증은 스키마 파일과 JSON Schema 검증기 사용.

관련 도구

최종 업데이트: