{ } · 2 / 4 / tab · minify
JSON 포맷터 및 검사기
JSON 포맷터는 한 줄로 붙은 JSON에 들여쓰기를 넣어 줍니다. 60바이트 문서는 공백 2칸이면 86바이트, 4칸이면 102바이트가 됩니다. JSON을 붙여넣으면 정렬 또는 압축된 텍스트나 첫 번째 오류의 줄과 열을 볼 수 있습니다.
- {"a": 1,} → 1:8
- 12345678901234567890 → 12345678901234567000
- 60 B → 86 B (2) → 102 B (4)
모든 처리는 이 탭 안에서 이루어지며 업로드되는 것은 없습니다. 파서는 RFC 8259를 따르므로 주석, 작은따옴표, 끝의 쉼표, 따옴표 없는 키는 오류로 표시됩니다.
Scanned by NortonTM Safe Web
한눈에 보기
- 가격
- 비용 없음
- 계정
- 필요 없음
- 표준
- RFC 8259 (JSON)
- 제한
- 입력 5 MB, 중첩 512단계
- 출력
- 공백 2칸, 공백 4칸, 탭 또는 압축, 키 정렬 선택 가능
- 업로드
- 없음 — 텍스트는 브라우저 탭 안에 머뭅니다
JSON 오류와 숫자 정밀도
이 수치는 이 페이지가 사용하는 파서에서 나온 것입니다. 줄과 열은 1부터 셉니다.
| 문서 | 이유 코드 | 줄:열 |
|---|---|---|
| {"a": 1,} | trailing_comma | 1:8 |
| {'a': 1} | single_quotes | 1:2 |
| [1, 2 | unexpected_end | 1:6 |
| {"a": 01} | bad_number | 1:8 |
| {"a": "x\q"} | bad_escape | 1:9 |
| {"a": 1 "b": 2} | missing_comma | 1:9 |
| 작성된 숫자 | JSON.parse가 반환하는 값 |
|---|---|
| 12345678901234567890 | 12345678901234567000 |
| 9007199254740993 | 9007199254740992 |
| 1.0000000000000001 | 1 |
| 1E400 | Infinity |
JSON을 정렬하는 방법
JSON 붙여넣기
입력 상자에 최대 5 MB의 JSON 문서를 입력하거나 붙여넣으세요. 결과를 먼저 볼 수 있도록 샘플이 이미 들어 있습니다.
출력 형식 고르기
공백 2칸, 공백 4칸, 탭, 압축 형태 중에서 고르세요. 체크박스를 켜면 모든 객체의 키를 코드 유닛 순서로 정렬합니다.
복사하거나 고치기
결과를 복사하거나 다운로드하세요. JSON에 문제가 있으면 메시지에 줄, 열, 이유가 표시되고 오류가 난 줄에서 캐럿(^)이 위치를 가리킵니다.
JSON 포맷터는 어떻게 동작하나요
이 페이지는 RFC 8259의 JSON 문법을 구현한 자체 파서로 텍스트를 읽은 다음, 선택한 들여쓰기로 다시 씁니다. 파서가 페이지의 일부이므로 같은 실수에는 어떤 브라우저에서도 같은 메시지가 표시됩니다. 내장 JSON.parse는 Chrome, Firefox, Safari마다 오류 문구가 다르고, 모두 줄과 열을 알려 주지는 않습니다.
숫자와 문자열 이스케이프는 입력한 그대로 복사됩니다. JSON.parse는 12345678901234567890을 12345678901234567000으로 바꾸는데, JavaScript 숫자가 유효 숫자 약 15~17자리의 64비트 부동소수점이기 때문입니다. 이 페이지는 20자리를 모두 유지하고, 숫자가 반올림될 수 있을 때 알려 줍니다. RFC 8259는 객체의 이름이 고유해야 한다고 권고하므로 중복된 키는 그대로 두고 알려 줍니다. 제한은 입력 5 MB, 중첩 512단계입니다.
JSON 포맷터 질문
JSON을 온라인에서 어떻게 정렬하나요?
입력 상자에 JSON을 붙여넣으세요. 단계마다 공백 2칸, 4칸 또는 탭으로 들여쓴 텍스트가 바로 나타납니다. 60바이트 샘플은 공백 2칸이면 86바이트, 공백 4칸이면 102바이트가 됩니다.
"unexpected token"은 무슨 뜻이며 오류는 어디에 있나요?
파서가 그 위치에서 JSON 문법이 허용하지 않는 문자를 만났다는 뜻입니다. 이 페이지는 이유, 줄, 열을 알려 줍니다. {"a": 1,}의 경우 1번째 줄 8번째 열에서 trailing_comma를 보고합니다.
JSON에서 끝의 쉼표는 왜 오류인가요?
RFC 8259의 문법은 쉼표마다 그 뒤에 값이 있어야 하므로 [1, 2,]와 {"a": 1,}은 유효하지 않습니다. JavaScript 객체 리터럴은 끝의 쉼표를 허용하지만 JSON은 허용하지 않습니다. 마지막 쉼표를 지우세요.
JSON에 주석이나 작은따옴표를 쓸 수 있나요?
아니요. RFC 8259에는 주석이 없고, 문자열과 키에는 큰따옴표만 씁니다. JSON5나 JSONC 같은 형식은 둘 다 허용하지만 서로 다른 형식이며, 이 페이지는 이를 오류로 표시합니다.
포맷터가 숫자를 바꾸나요?
아니요. 숫자와 이스케이프는 입력한 그대로 다시 쓰입니다. JSON.parse는 12345678901234567890을 12345678901234567000으로 반올림하지만, 이 페이지는 모든 자릿수를 유지하므로 정렬해도 잃는 것이 없습니다.
제 JSON이 어딘가에 업로드되나요?
아니요. 페이지는 브라우저 탭 안에서 실행되며 어떤 서버로도 전송하지 않습니다. 한 번 불러오고 나면 오프라인에서도 동작합니다. 입력 제한은 5 MB입니다.