JSON 포매터 & 검증기
무료 온라인 JSON 포맷 및 검증 도구. 인터랙티브 트리 뷰에서 노드 접기/펼치기, 키 또는 배열 항목 삭제, 구문 강조, 정확한 오류 메시지를 지원합니다. 완전히 클라이언트 측에서 처리됩니다.
들여쓰기
입력
출력
출력이 여기에 표시됩니다.
이 도구가 도움이 되었나요?
JSON이란 무엇인가
JSON(JavaScript Object Notation)은 사람이 읽고 쓰기 쉬우며, 기계가 파싱하고 생성하기 쉬운 경량 데이터 교환 형식입니다. RESTful 서비스, 설정 파일, 데이터 저장소 등 현대 웹 API의 사실상 표준이 되었습니다. JSON에서 사용할 수 있는 데이터 유형에는 문자열, 숫자, 불리언, null, 배열, 객체가 있습니다.
JSON을 포맷해야 하는 경우
API 응답이 압축된 한 줄 문자열로 반환되면 사람이 읽기几乎 불가능합니다. JSON을 포맷하면 들여쓰기와 줄 바꿈이 추가되어 데이터 구조를 한눈에 파악할 수 있습니다. API 엔드포인트 디버깅, 로그 파일 검토, 설정 파일 감사, 데이터 마이그레이션 시 JSON 포맷터는 필수입니다. 또한 쉼표 누락이나 따옴표 불일치 같은 구문 오류를更容易 발견할 수 있습니다.
온라인 JSON 도구 vs 에디터 플러그인
VS Code나 Sublime Text 같은 에디터에는 JSON 포맷팅 플러그인이 있어 개발 시 편리합니다. 그러나 빠른 디버깅, 크로스 디바이스 작업, 비기술자와의 공유 시에는 온라인 JSON 도구가更便捷합니다. 설치 없이 브라우저만 열면 사용 가능합니다. 이 도구는 노드 접기/펼치기, 키 삭제가 가능한 대화형 트리 뷰를支持하여 일반 텍스트 편집보다 직관적입니다.
각 언어별 JSON 처리
JavaScript
// Parse JSON string
const obj = JSON.parse('{"name":"Alice","age":30}');
// Format with 2-space indent
const pretty = JSON.stringify(obj, null, 2);
// Minify
const mini = JSON.stringify(obj);Python
import json
# Parse
obj = json.loads('{"name": "Alice", "age": 30}')
# Format
pretty = json.dumps(obj, indent=2, ensure_ascii=False)
# Minify
mini = json.dumps(obj, separators=(',', ':'))Go
import ( "encoding/json" "bytes" ) // Format var buf bytes.Buffer json.Indent(&buf, raw, "", " ") // Minify var mini bytes.Buffer json.Compact(&mini, raw)
Rust
use serde_json::Value; // Parse and format let v: Value = serde_json::from_str(raw)?; let pretty = serde_json::to_string_pretty(&v)?; // Minify let mini = serde_json::to_string(&v)?;
자주 묻는 질문
- JSON이란 무엇인가요?
- JSON(JavaScript Object Notation)은 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기 쉬운 경량 데이터 교환 형식입니다. 언어에 독립적이며, API, 설정 파일, 데이터 저장소에서 널리 사용됩니다.
- 왜 JSON을 포맷해야 하나요?
- 원시 JSON은 공백이나 줄바꿈 없이 압축되어 있어 전송에는 효율적이지만 읽기 어렵습니다. 포맷(미화)하면 들여쓰기와 줄바꿈이 추가되어 구조를 한눈에 파악할 수 있어 디버깅과 데이터 검사가 훨씬 쉬워집니다.
- JSON 유효성을 어떻게 검증하나요?
- 유효한 JSON은 문자열을 큰따옴표로 감싸야 하고, 키는 문자열이어야 하며, 괄호가 일치해야 하고, 후행 쉼표와 주석은 허용되지 않습니다. 이 도구는 실시간으로 입력을 파싱하고 정확한 오류 메시지를 표시합니다.
- JSON과 JavaScript 객체의 차이점은 무엇인가요?
- JSON은 일반 텍스트로, 키는 반드시 큰따옴표로 감싸야 하며 함수, undefined, 주석, 후행 쉼표를 사용할 수 없습니다. JavaScript 객체는 메모리 내 데이터 구조로, 키에 따옴표가 필요 없고 함수 값이나 Symbol 타입을 지원합니다.
- 왜 JSON을 압축(minify)하나요?
- 압축은 불필요한 공백을 모두 제거하여 파일 크기를 줄이고 네트워크 전송 속도를 높입니다. 프로덕션 API 응답이나 배포용 설정 파일에서 일반적으로 사용됩니다.
- 인터랙티브 트리 뷰는 어떻게 사용하나요? JSON을 편집할 수 있나요?
- 포맷 후 출력은 인터랙티브 트리로 렌더링됩니다. 객체나 배열 옆의 화살표를 클릭하여 접거나 펼칠 수 있습니다. 임의의 행에 마우스를 올리면 오른쪽에 × 버튼이 나타나며, 클릭하면 해당 키-값 쌍 또는 배열 항목이 삭제됩니다. 편집은 출력에만 영향을 미치며, 원본 입력은 변경되지 않습니다.