주요 기능
- 듀얼 모드: 사람 친화적인 <strong>포맷</strong> 또는 컴팩트한 <strong>압축</strong>을 한 번의 클릭으로
- 엄격한 JSON 파싱 (RFC 8259 / ECMA-404) — 잘못된 JSON은 명확한 오류와 함께 조기에 거부됨
- 예쁘게 출력 모드는 들여쓰기와 줄 바꿈을 정규화하여 읽기와 검토가 용이함
- 압축 모드는 데이터 값을 보존하면서 중요하지 않은 공백과 줄 바꿈을 제거함
- 구성 가능한 들여쓰기 크기 (1–8 스페이스) 및 들여쓰기 스타일 (스페이스 또는 탭) - 포맷 모드에서
- ⏎ 깔끔한 diff를 위해 파일 끝에 항상 최종 줄 바꿈을 삽입하는 옵션 (`insertFinalNewline`)
- UTF-8 안전: 문자열 내부의 유니코드 코드 포인트와 이스케이프 시퀀스를 보존함
- 100% 클라이언트 측 — 귀하의 JSON은 브라우저에서 직접 처리됨
🛠️ JSON 포맷 또는 압축 방법 for json-minifier
1. JSON 붙여넣기 또는 업로드
📥 JSON을 편집기에 붙여넣거나 <code>.json</code> 파일을 드롭존에 드롭하세요. 이 도구는 엄격한 JSON 파서를 사용하여 입력을 검증합니다 — 주석과 후행 쉼표는 허용되지 않습니다.
2. 포맷 또는 압축 선택
🎛️ 액션 선택기 또는 <strong>포맷</strong>/<strong>압축</strong> 버튼을 사용하여 모드를 선택하세요. 포맷은 들여쓰기로 예쁘게 출력하고; 압축은 컴팩트한 한 줄(또는 몇 줄) 표현을 생성합니다.
3. 들여쓰기 설정 조정 (포맷 모드)
📏 포맷 모드에서 들여쓰기 크기 (1–8)와 스페이스 또는 탭 사용 여부를 선택하세요. 파일 끝에 최종 줄 바꿈을 삽입할지 여부도 결정할 수 있습니다. 압축 모드는 항상 가장 컴팩트한 공백을 사용합니다.
4. 결과 복사 또는 다운로드
📤 포맷되거나 압축된 JSON을 검토한 후 복사하거나 파일로 저장하세요. API 응답, 구성 파일, 문서 또는 테스트 픽스처에 사용하세요.
기술 사양
코어 변환 (엄격하고 안전함)
유효하고 표준을 준수하는 JSON 출력을 생성하기 위해 적용되는 작업들.
| 작업 | 적용됨 | 참고 |
|---|---|---|
| 엄격한 JSON 파싱 | ✅ | 제어 문자, 주석, 후행 쉼표, NaN/Infinity/undefined 및 기타 비표준 토큰을 거부합니다. |
| 최소화 모드에서 공백 제거 | ✅ | 토큰 간 공백, 탭 및 줄바꿈이 제거됩니다; 문자열 내용은 정확히 보존됩니다. |
| 포맷 모드에서 예쁘게 출력 | ✅ | 구성 가능한 들여쓰기와 깔끔한 줄바꿈으로 JSON을 재생성합니다. |
| 키 순서 보존 | ✅ | 객체 키 순서는 구문 분석/생성 동작을 따릅니다(대부분의 사용 사례에서 기능적으로 보존됨). |
| 숫자 어휘 | ✅ | 숫자는 기본 JSON 엔진에 따라 직렬화됩니다; 임의의 반올림이 추가되지 않습니다. |
| 유니코드 처리 | ✅ | 원시 UTF-8 문자와 <code>\uXXXX</code> 이스케이프 모두 JSON 파서/문자열 변환기에 의해 인식됩니다. |
호환성 및 안전성 참고사항
도구가 경계 사례와 비표준 패턴에서 어떻게 동작하는지.
| 사례 | 동작 | 권장사항 |
|---|---|---|
| 주석(<code>//</code>, <code>/* ... */</code>) 또는 후행 쉼표 | ❌ 유효하지 않은 JSON으로 거부됨 | 별도의 JSONC 전처리기를 사용하거나 이 도구 사용 전 주석을 제거하세요. |
| 큰 정수(> 2^53−1) | ⚠️ JSON 숫자로 구문 분석 | 정확한 64비트 ID가 필요하면 처음부터 문자열로 표현하세요. |
| 날짜 및 사용자 정의 타입 | ✅ 문자열로 보존됨 | JSON에는 기본 날짜나 사용자 정의 타입이 없습니다; 소비자가 이를 해석해야 합니다. |
| NDJSON(줄 단위 JSON) | ⚠️ 특별 처리되지 않음 | NDJSON 사용 시 CLI 도구로 각 줄을 개별적으로 최소화하세요. |
최소화 모드에서의 일반적인 크기 감소
실제 절감량은 원본 서식과 주석 밀도에 따라 다릅니다.
| 입력 스타일 | 일반적인 절감률 | |
|---|---|---|
| 많은 공백/줄바꿈이 있는 서식 | 20%~40% | 예쁘게 출력된 설정 파일과 API 응답에서 흔히 사용됩니다. |
| 중간 정도 포맷팅 | 10%~25% | 잘 들여쓰기되었지만 간결한 JSON. |
| 이미 간결함 | 5%~10% | 일부 도구들은 이미 최소한의 공백만 사용합니다. |
JSON 포맷팅 및 최소화를 위한 CLI 대안
대용량 파일, 자동화 및 CI/CD를 위해 이 온라인 도구와 동일한 동작을 하는 명령줄 유틸리티를 함께 사용하세요.
Linux / macOS / Windows
jq — JSON 최소화
jq -c . input.json > output.min.json문서당 한 줄로 간결한 JSON을 파싱하고 작성합니다.
jq — 2칸 들여쓰기로 예쁘게 출력
jq . input.json > pretty.json읽기 쉽도록 일관된 들여쓰기로 JSON을 재포맷합니다.
Python
Python 표준 라이브러리로 최소화
python -c "import sys,json; print(json.dumps(json.load(sys.stdin), separators=(',',':')))" < input.json > output.min.json엄격한 파서; 토큰 사이의 공백과 줄바꿈을 제거합니다.
2칸 들여쓰기로 예쁘게 출력
python -c "import sys,json; print(json.dumps(json.load(sys.stdin), indent=2))" < input.json > pretty.json온라인 도구와 유사한 들여쓰기로 JSON을 포맷합니다.
Node.js
Node 한 줄 명령어 — 최소화
node -e "const fs=require('fs');const s=fs.readFileSync(0,'utf8');process.stdout.write(JSON.stringify(JSON.parse(s)));" < input.json > output.min.jsonJSON.parse + JSON.stringify를 사용하여 간결한 출력을 생성합니다.
Node 한 줄 명령어 — 예쁘게 출력
node -e "const fs=require('fs');const s=fs.readFileSync(0,'utf8');process.stdout.write(JSON.stringify(JSON.parse(s), null, 2));" < input.json > pretty.json2칸 들여쓰기로 JSON을 포맷합니다.
일반적인 사용 사례
웹 및 API 성능
- CDN을 통해 제공하기 전에 JSON API 응답을 최소화합니다.
- HTML 또는 JS에 포함된 설정 페이로드를 축소합니다.
- 간결한 JSON을 사용하여 localStorage/sessionStorage 공간을 줄입니다.
CI/CD 및 데이터 파이프라인
- 캐싱 또는 비교 전에 JSON 아티팩트를 정규화합니다.
- OpenAPI 스펙, 매니페스트 및 설정에 일관된 포맷팅을 적용합니다.
- 대용량 JSON 데이터셋을 객체 스토리지에 업로드하기 전에 압축하세요.
디버깅, 로그 및 원격 측정
- 사고 조사를 위해 깊게 중첩된 JSON 로그를 가독성 있게 출력하세요.
- 대역폭을 절약하기 위해 전송되는 로그 페이로드를 압축하세요.
- 버그 리포트를 위해 API 응답의 가독성 있는 스냅샷을 준비하세요.
❓ Frequently Asked Questions
JSON 형식화나 압축이 데이터를 변경하나요?
JSON 데이터를 보존합니다. 형식 모드는 구조를 더 쉽게 읽을 수 있도록 공백과 들여쓰기만 변경합니다. 압축 모드는 키, 값, 배열 및 객체를 의미적으로 동일하게 유지하면서 토큰 사이의 중요하지 않은 공백을 제거합니다.주석이나 후행 쉼표를 지원하나요?
JSON(RFC 8259)을 적용하며 주석과 후행 쉼표를 거부합니다. JSONC로 작업하는 경우 별도의 전처리기를 사용하여 주석을 제거한 후 여기서 결과적인 엄격한 JSON을 형식화하거나 압축하세요.키 순서가 재정렬되나요?
JSON 엔진이 객체를 내보내는 방식을 반영합니다. 소비자가 키 순서에 의존하는 경우 문서화하고 테스트를 추가하지만, JSON 자체는 순서 의미를 정의하지 않는다는 점을 기억하세요.큰 정수를 손실하지 않으려면 어떻게 해야 하나요?
JSON 숫자는 IEEE-754 배정밀도로 표현됩니다. 큰 ID나 민감한 숫자 값(예: 64비트 정수)의 경우 엔드투엔드로 문자열로 인코딩하여 시스템 간에 정밀도를 절대 잃지 않도록 하세요.처리가 정말 클라이언트 측에서 이루어지나요?
Pro Tips
diff와 코드 리뷰를 위해 저장소에 압축되지 않고 잘 형식화된 JSON 버전을 유지하고, 더 나은 성능을 위해 프로덕션에서는 압축된 JSON을 제공하세요.
키 순서나 특별한 숫자 처리에 대한 가정을 문서화하고 테스트와 린터로 이를 강제하세요.
JSON 압축과 HTTP 압축(GZIP/Brotli)을 결합하여 가능한 최고의 전송 절감 효과를 얻으세요.
반복적인 작업(예: OpenAPI 스펙 정리)의 경우 CLI 동등 도구(jq/Python/Node)를 스크립트화하고 이 온라인 도구를 빠른 일회성 검사에 사용하세요.
Additional Resources
Other Tools
- CSS 정리 도구
- HTML 정리 도구
- 자바스크립트 정리 도구
- PHP 정리 도구
- 색상 선택기
- 스프라이트 추출기
- Base64 디코더
- Base64 인코더
- C# 포맷터
- CSV 포맷터
- Dockerfile Formatter
- Elm 포맷터
- ENV 포맷터
- Go 포맷터
- GraphQL 포맷터
- HCL 포맷터
- INI 포맷터
- JSON 포맷터
- LaTeX 포맷터
- 마크다운 포맷터
- Objective-C 포맷터
- Php Formatter
- 프로토콜 버퍼 포맷터
- Python 포맷터
- Ruby 포맷터
- Rust 포맷터
- Scala 포맷터
- 셸 스크립트 포맷터
- SQL 포맷터
- SVG 포맷터
- Swift 포맷터
- TOML 포맷터
- Typescript Formatter
- XML 포맷터
- YAML 포맷터
- Yarn 포맷터
- CSS 압축기
- Html Minifier
- Javascript Minifier
- XML 최소화 도구
- HTTP 헤더 뷰어
- PDF 텍스트 변환
- 정규식 테스터
- 검색 순위 확인기
- Whois 조회