텍스트 도구

JSON 포맷터 및 뷰어

JSON을 붙여넣으면 즉시 정렬됩니다; 임의의 필드를 클릭하면 오른쪽에서 전체 값과 경로를 확인할 수 있습니다. 문법 오류가 행과 열에 표시되며 모두 브라우저 내에서 처리됩니다.

정렬 및 압축 필드 클릭으로 보기 오류 행과 열 지정 100% 로컬 처리
들여쓰기

왜 이게 필요한가요

매일 JSON 을 다루는 사람을 위한 필수 도구

API 응답, 설정 파일, 로그 페이로드 등 원본 JSON은 종종 읽기 어려운 한 줄로 제공됩니다. 가독성을 높이고 잘못된 쉼표를 찾은 후 원하는 형식으로 다시 정리하세요.

01

보기 좋게 포맷하거나 압축하기

인간이 읽기 쉬운 트리 구조와 기계가 주고받는 한 줄 형식을 한 번에 전환할 수 있으며, 코드 스타일에 따라 2칸, 4칸, Tab 중 들여쓰기를 선택할 수 있습니다.

02

오류 위치를 행과 열로 표시

복잡한 구문 분석 오류 메시지 대신 L12 : C34 와 같은 행과 열 좌표로 문법 오류를 직접 알려줍니다. 누락된 쉼표나 따옴표를 한눈에 확인할 수 있습니다.

03

키 이름 재귀 정렬

객체 키는 각 계층에서 알파벳 순으로 재귀 정렬되고 배열 요소는 원래 순서를 유지합니다. 설정 비교나 테스트 고정값 저장 시 가장 유용합니다.

04

문자열 이스케이프 처리 / 역이스케이프 처리

전체 JSON을 문자열 리터럴로 이스케이프 처리해 코드나 환경 변수에 쉽게 삽입할 수 있으며, 로그의 {\"a\":1} 형식 리터럴을 원본 JSON으로 복원할 수도 있습니다.

05

필드를 클릭해 전체 내용 보기

편집 영역의 필드를 클릭하면, 오른쪽 드로어에 해당 값의 전체 내용, 타입, JSON 경로가 표시됩니다. 중첩된 객체와 배열도 완전히 확인할 수 있어 괄호를 세어 확인할 필요가 없습니다.

06

완전히 로컬에서 실행

JSON은 브라우저를 벗어나지 않으며, 이 도구는 오프라인으로 사용할 수 있고 입력이 비어있을 때는 아무 요청도 보내지 않습니다.

사용 방법

들여쓰기는 2칸, 4칸, Tab 사이에서 전환할 수 있습니다. 기기에 전달해야 할 때는 한 번의 클릭으로 한 줄로 압축하고, 안정적인 순서가 필요할 때는 객체 키를 재귀적으로 정렬할 수 있으며, 전체 JSON 문자열을 문자 리터럴로 이스케이프하거나 로그에 이스케이프된 리터럴을 원래대로 복원할 수도 있습니다.

필드를 클릭하면 오른쪽 드로어에서 해당 필드의 전체 내용을 확인할 수 있습니다. 입력에 따라 키 수, 배열 요소, 중첩 깊이가 실시간으로 계산됩니다.同一 페이지에서 여러 JSON을 나란히 비교해서 볼 수 있으며, 각 JSON은 서로 영향을 미치지 않습니다. 모든 처리가 브라우저 로컬에서 이루어지며 내용은 업로드되지 않습니다.

더 많은 JSON 도구

사용 목적별로 선정된 타사 도구로, 본 사이트에서는 구현하지 않으므로 필요할 때 사용하시기 바랍니다.

도구 목적 주요 기능
JSON Editor Online 편집 및 유효성 검사 텍스트와 트리의 두 패널이 연동되며 구조를 드래그 조정할 수 있고, Diff, Schema 유효성 검사 및 쿼리 기능이 내장되어 있습니다.
JSON Crack 시각화 JSON을 대화형 노드 그래프로 표현해 복잡한 중첩 구조를 빠르게 이해하거나 프레젠테이션에 적합합니다.
JSON Visio 시각화 또 다른 그래픽 뷰어로 인터페이스가 더 가볍습니다. JSON Crack과 함께 용도에 맞게 선택하여 사용하세요.
Diffchecker 비교 두 텍스트를 나란히 또는 통합 뷰로 비교해 추가, 삭제 및 수정된 행을 빠르게 찾을 수 있습니다.
JSONPath 쿼리 온라인에서 JSONPath 표현식을 실행해 원하는 필드를 JSON에서 경로별로 추출할 수 있습니다.
JSONata 쿼리 및 변환 JSON 표현식 언어를 조회하고 변환할 수 있으며, 온라인 playground와 예제를 참고할 수 있습니다.
quicktype 타입 생성 JSON을 TypeScript, Swift, Go 등 언어의 타입 정의로 변환합니다.
JSON Generator 데이터 생성 템플릿을 사용해 구조화된 목 데이터를 생성하며, API 테스트용 샘플 제작에 적합합니다.

JSON 포맷팅 세부 사항

JSON은 간단해 보이지만 실제로는 몇 가지 엄격한 규칙이 있습니다. 이를 알면 파서가 데이터를 거부할 때 발생하는 혼란을 줄일 수 있습니다.

어떤 JSON이 합법적인가요?

JSON은 오직 여섯 가지 값만 정의합니다: 객체, 배열, 문자열, 숫자, 불리언, null. 키는 반드시 큰따옴표로 묶인 문자열이어야 하고, 불필요한 쉼표나 주석은 허용되지 않습니다. JavaScript에서의 작은따옴표, undefined, NaN, Infinity, 후행 쉼표는 엄격한 구문 분석기에서 오류가 발생하며, 이 도구가 바로 이러한 오류를 표시합니다.

「보기」와 「포맷팅」은 무엇이 다르나요?

포맷팅은 텍스트의 서식(들여쓰기, 줄 바꿈, 압축)을 변경하지만, 보기는 원문을 그대로 두고 특정 필드를 클릭했을 때 해당 필드의 전체 값, 타입, JSON 경로를 오른쪽 서랍에 표시합니다. 중첩이 깊은 객체는 편집 영역에서 종종 괄호만 남게 되는데, 직접 선택해서 보면 특정 필드의 실제 내용을 쉽게 확인할 수 있어 API 응답이나 로그 페이로드를 읽을 때 특히 편리합니다.

포맷팅 후 키의 순서가 바뀌는 이유는 무엇인가요?

JSON 규격은 객체를 순서 없는 키-값 쌍으로 간주하므로 구문 분석기는 자유롭게 순서를 재정렬할 수 있습니다. 사실 V8(Chrome / Node)은 문자열 키의 삽입 순서를 유지하지만, 정수 형태의 키("1", "42")는 항상 숫자 순서로 가장 앞에 정렬됩니다. 만약 구문 분석기 간에 안정적인 순서가 필요하다면 「객체 키 이름 정렬」을 켜세요 — 재귀적으로 알파벳 순서로 정렬되며 설정 파일을 비교할 때 특히 유용합니다.

JSON은 얼마나 큰 숫자를 표현할 수 있나요?

JSON 자체에는 상한이 없지만, JavaScript는 모든 숫자를 IEEE-754 배정도 부동 소수점으로 구문 분석합니다. ±2^53(약 9000조)을 초과하는 정수는 정밀도가 손실됩니다. 9007199254740993은 9007199254740992가 됩니다.

페이로드에 64비트 ID 또는 나노초 타임스탬프가 있는 경우 문자열로 유지해야 합니다. 이 도구는 이를 손상시키지 않지만 JS 코드에 붙여넣으면 손상됩니다.

언제 미화보다 압축을 사용해야 할까요?

사람이 읽는 상황에서는 미화를 사용합니다: 코드 검토, 디버깅, 문서 작성. 기계가 전송하는 상황에서는 압축을 사용합니다: API 요청 본문, URL 매개변수, 환경 변수, .env 파일.

일반적인 API 페이로드는 압축 후 15–30%의 바이트를 절약할 수 있으며 구조는 전혀 변경되지 않습니다. 이것이 가장 저렴한 압축입니다.

이스케이프는 무엇을 위한 것인가요?

이스케이프는 JSON을 문자열 리터럴로 감쌉니다: 따옴표를 \"로 바꾸고 줄 바꿈을 \n으로 바꾸므로 다른 JSON 값, shell 명령 또는 환경 변수에 안전하게 포함될 수 있습니다.

디이스케이프는 복원하는 것입니다. 로그에서 {\"a\":1}과 같은 내용을 복사한 적이 있다면 이는 이스케이프된 형식이며, 그냥 붙여넣으면 '디이스케이프'를 클릭하면 됩니다.

자주 묻는 질문

내 JSON이 업로드되거나 저장되나요?

아니요. 모든 처리는 브라우저에서 JavaScript로 수행되며, JSON을 전송하는 요청은 전혀 없고 오프라인에서도 사용할 수 있습니다. 또한 로컬 스토리지에 쓰이지 않으며 페이지를 새로고침하면 입력 내용이 삭제됩니다.

내 설정 파일 포맷팅이 실패하는 이유는 무엇인가요?

거의 확실하게 엄격한 JSON이 아니기 때문입니다: JSONC/JSON5는 주석과 후행 쉼표를 허용하고, YAML은 들여쓰기로 계층을 표현하며, .env는 key=value 형식입니다. 주석과 후행 쉼표를 먼저 제거하거나 해당 형식의 파서를 사용하세요.

키 정렬이 배열에 영향을 미치나요?

아니요. 배열 순서 자체가 의미를 가지므로(첫 번째 항목, 두 번째 항목 …) 항상 그대로 유지됩니다; 오직 객체(배열 내 중첩 객체 포함)의 키만 알파벳 순으로 재귀 정렬됩니다.

"오류 위치 L12 : C34"는 무엇을 의미하나요?

파서가 분석을 중단한 위치를 나타냅니다: 12행, 34열입니다(1부터 시작). 실제 오류는 대개 이 지점이나 그 앞에 있습니다 – 위 행에 쉼표가 누락되었거나, 따옴표가 제대로 이스케이프되지 않았거나, 닫힌 괄호 앞에 후행 쉼표가 더 있을 수 있습니다.

크기 제한이 있나요? 모바일에서 사용할 수 있나요?

엄격한 상한선은 없습니다 – 몇 메가바이트의 로그 출력도 포맷팅하는 데 문제가 없습니다. 매우 큰 입력(수십 메가바이트)은 저사양 기기에서 약간 느려질 수 있는데, 이는 키 입력마다 재분석 및 재포맷팅을 수행하기 때문입니다. 페이지는 반응형으로 제작되어 편집 영역이 화면 너비에 맞게 자동 조정됩니다.

관련 도구