JSON 도구 모음
서식 / 압축 / 이스케이프 / 복원 — 모두 브라우저에서 실행됩니다.
결과
사용 방법
- 왼쪽에 JSON이나 아무 텍스트나 붙여 넣고 위에서 동작을 고르세요. 서식 정리, 압축, 이스케이프, 복원입니다.
- “들여쓰기”는 서식 정리에만 영향을 줍니다(공백 2칸 또는 4칸). 정리된 결과는 펼친 상태로 시작하며 각 줄 옆 화살표로 객체와 배열을 접거나 펼칠 수 있습니다.
- 자동 검증은 오류를 찾으면 줄과 열을 가리킵니다. 결과를 복사하거나 내려받고, “지우기” 옆의 ⇄ 버튼으로 결과를 입력으로 되돌리세요. 일부를 접어 두어도 이 동작들은 항상 전체 결과를 씁니다.
예시
입력
{"user":{"id":42,"name":"김민준","roles":["admin","editor"],"active":true},"score":12345678901234567890}
정리된 결과
{ "user": { "id": 42, "name": "김민준", "roles": [ "admin", "editor" ], "active": true }, "score": 12345678901234567890 }
기본 규칙만 쓴 예시입니다. 공백 2칸 들여쓰기, 키는 입력한 순서를 유지합니다. 20자리 score는 한 자리도 바꾸지 않고 출력합니다. JSON.parse를 거치면 12345678901234567000이 됩니다.
규칙, 한계, 알려진 문제
- 엄격한 JSON(RFC 8259)입니다. 주석, 끝 쉼표, 작은따옴표, 따옴표 없는 키, NaN, Infinity는 거부하며, 파서 문구를 그대로 옮기지 않고 고치는 방법을 알려 줍니다.
- 서식 정리와 압축은 공백만 바꿉니다. 문자열 이스케이프, 숫자 리터럴, 따옴표 친 키는 입력한 그대로 출력합니다. "\u00e9"는 "\u00e9"로, 12345678901234567890은 정확히, 1e400은 null이 되지 않고, -0은 -0으로 남습니다.
- 중복 키는 JSON.parse처럼 마지막 값을 쓰며 경고에 키 이름을 알려 줍니다. 앞의 값은 버립니다.
- “이스케이프”는 입력 전체를 하나의 JSON 문자열 리터럴로 인코딩합니다(따옴표, 역슬래시, 제어 문자는 이스케이프하고 나머지는 그대로). “복원”은 완전한 따옴표 문자열(엄격히 검사)이나 이스케이프 시퀀스만 있는 입력을 받습니다.
- 줄과 열은 유니코드 코드 포인트로 셉니다. 그래서 이모지도 한 열입니다. 공백, 탭, 줄바꿈, 캐리지 리턴만 공백으로 보며 U+3000이나 U+00A0은 코드 포인트와 함께 오류로 알립니다.
- 한도: 100만 자, 중첩 512단계. 둘 중 하나를 넘으면 오류를 내고 결과를 잘라 내지 않습니다. 파일 올리기는 로컬 파일만 읽으며 아무것도 업로드되지 않습니다.
- JSON→YAML/XML/CSV 변환, JSON Schema, JSONPath, 트리 편집기, URL 매개변수, 기록은 없습니다. 모든 처리가 브라우저에서 이루어지며 아무것도 업로드하거나 저장하지 않습니다.
관련 도구
JSON 작업을 마친 뒤 흔히 이어서 쓰는 도구입니다.