Devin.KR

JSON VALIDATOR · SYNTAX CHECK

JSON 문법 검사기

이 JSON, 왜 파싱이 안 될까?

{"name": "Devin",} 처럼 마지막에 쉼표가 남은 JSON 을 넣고 문법 검사를 누르면 무효 판정과 함께 오류가 난 줄과 칸을 알려 줍니다. 통과하면 키 개수, 최대 깊이, 글자 수와 UTF-8 바이트도 함께 보여 줍니다.

  • 오류 줄·칸 표시
  • 키·깊이 통계
  • UTF-8 크기
  • 브라우저에서만 처리
바로 사용하기 ↓
JSON을 입력하세요.

검사 항목

객체의 키 수(중첩 포함), 최대 중첩 깊이, 문자 수와 UTF-8 바이트 크기를 함께 계산합니다. 배열 요소는 키 수에 포함하지 않습니다.

정렬하거나 압축하려면 JSON 포맷터로 이동하세요.

MADE FOR YOUR WORK

이럴 때 쓰세요

파싱 에러 원인 찾기

Unexpected token 같은 서버 로그를 받았을 때 요청 본문을 넣어 어느 위치가 틀렸는지 확인합니다.

손으로 고친 설정 점검

직접 수정한 설정 JSON 을 배포하기 전에 쉼표·따옴표 실수가 없는지 한 번 더 검사합니다.

응답 크기·구조 파악

API 응답이 몇 바이트인지, 중첩이 얼마나 깊은지 숫자로 보고 페이로드 제한에 걸리지 않는지 봅니다.

복사해 온 JSON 확인

문서나 메신저에서 복사한 예제 JSON 에 둥근 따옴표 같은 문자가 섞여 깨지지 않았는지 검사합니다.

STEP BY STEP

JSON 문법 검사기 사용 방법

이렇게 쓰세요

  1. JSON 붙여 넣기

    검사할 JSON 칸에 확인할 내용을 넣습니다.

  2. 문법 검사 누르기

    유효하면 '유효한 JSON', 틀리면 '유효하지 않은 JSON' 배지가 나옵니다.

  3. 오류 위치 따라가기

    무효일 때는 '무효 · 3줄 1칸 · 메시지' 형식으로 위치와 브라우저 오류 문구가 표시됩니다.

  4. 통계 확인

    유효할 때는 키 개수(중첩 포함), 최대 깊이, 글자 수, UTF-8 바이트가 한 줄로 나옵니다.

UNDERSTAND THE BASICS

문법 검사와 스키마 검사는 다르다

JSON 검사에는 두 층이 있습니다. 첫째는 문법 검사로, 따옴표·쉼표·괄호가 규칙대로 쓰여 기계가 읽을 수 있는지를 봅니다. 둘째는 스키마 검사로, 'name 은 필수 문자열, age 는 0 이상 숫자'처럼 약속한 모양을 지켰는지를 봅니다. 이 도구는 첫째만 합니다.

문법 오류 메시지는 파서가 '더는 읽을 수 없다'고 멈춘 자리를 가리킵니다. 그래서 진짜 원인은 그보다 앞에 있는 경우가 많습니다. 마지막 쉼표는 다음 } 에서, 닫히지 않은 괄호는 입력 끝에서 오류가 납니다.

통계의 깊이는 객체·배열이 몇 겹으로 들어갔는지를 뜻합니다. {"a":1} 은 1, {"a":{"b":1}} 은 2 입니다. 키 개수는 모든 객체의 키를 더한 값이며 배열 요소는 세지 않습니다.

자주 보는 오류 메시지 (크롬 기준 예)
메시지흔한 원인
Expected double-quoted property name키에 따옴표가 없거나, } 앞에 쉼표가 남음
Expected ',' or '}' after property value값 사이 쉼표 빠짐, 또는 } 로 닫지 않음
Unexpected token작은따옴표, NaN, 둥근 따옴표 같은 허용되지 않은 글자
Bad control character in string literal문자열 안에 탭·줄바꿈 원문이 들어감(\t, \n 으로 써야 함)
Unexpected non-whitespace character after JSONJSON 이 끝난 뒤 글자가 더 있음
Unexpected end of JSON input괄호가 닫히지 않은 채 입력이 끝남

JSON 문법 검사기 사용 안내

JSON 유효성, 오류 줄과 칸, 키 개수, 최대 깊이, UTF-8 크기를 브라우저에서 검사합니다.

JSON을 붙여 넣고 문법 검사를 누르면 유효 여부와 키 개수·깊이·글자 수·UTF-8 크기를 확인할 수 있습니다. JSON에서는 키와 문자열에 큰따옴표를 사용해야 합니다.

QUICK EXAMPLE

JSON 문법 검사기 사용 예제

입력 · 시작

{"name": "Devin",}

결과 · 확인

마지막 쉼표에 대한 문법 오류 확인

문법이 유효해도 API가 요구하는 필드나 타입을 만족한다는 뜻은 아닙니다.

어떻게 구현했나

판정은 JSON.parse 로 합니다. 통과하면 유효한 JSON 입니다. 오류 위치는 엔진 메시지 형식이 브라우저마다 달라서, 위치 숫자를 받아 그 지점까지 문자를 세어 줄과 칸으로 바꿉니다.

통과한 경우에는 구조를 재귀로 훑어 키 개수와 최대 깊이를 셉니다. 응답이 예상한 모양인지, 중첩이 생각보다 깊지 않은지 눈으로 확인하는 용도입니다.

글자 수와 UTF-8 바이트를 함께 보여줍니다. 페이로드 크기 제한이 바이트로 걸린 경우가 많기 때문입니다.

BEFORE YOU FINISH

자주 하는 실수

유효하면 API 가 받아 줄 거라 믿는다

문법이 맞아도 필드 이름이 틀리거나 숫자를 문자열로 보냈다면 서버는 거절합니다. 필수 필드와 타입은 API 문서와 따로 대조하세요.

엑셀 값을 문자열에 그대로 붙인다

셀에서 복사한 값에 탭이나 줄바꿈이 섞이면 문자열 안의 제어 문자로 오류가 납니다. \t, \n 으로 바꿔 적어야 합니다.

'위치 확인 불가'가 나와 당황한다

브라우저 오류 문구에 위치 숫자가 없으면 엉뚱한 자리를 가리키지 않도록 '위치 확인 불가'로 표시합니다. 이때는 메시지에 나온 문자(예: ''', 'N')를 입력에서 직접 찾아보세요.

자주 묻는 질문

JSON 유효성 검사는 어떻게 하나요?

검사할 JSON 칸에 붙여 넣고 문법 검사를 누르면 됩니다. 결과 배지로 유효 여부를, 무효라면 줄과 칸으로 위치를 확인하세요.

JSON Schema 로 필드 검증도 되나요?

지원하지 않습니다. 이 도구는 문법만 검사합니다. 필드 존재와 타입 검증은 JSON Schema 검증 라이브러리를 쓰세요.

JSON 파일 최대 깊이는 어떻게 세나요?

가장 바깥 객체나 배열 안의 값을 1단계로 셉니다. 값 하나만 있는 JSON(예: 42)은 깊이 0입니다.

JSON 크기를 바이트로 알 수 있나요?

유효한 JSON 이면 입력 그대로의 UTF-8 바이트를 보여 줍니다. 공백·줄바꿈까지 포함한 크기라, 압축해 보내면 더 작아집니다.

정렬이나 압축도 되나요?

이 도구는 검사만 합니다. 정렬·압축은 같은 사이트의 JSON 포맷터를 쓰세요.

입력한 데이터는 어디에서 처리하나요?

이 도구의 입력 데이터는 브라우저에서 처리하며 도구 기능을 위해 서버로 업로드하지 않습니다. 결과를 공유하기 전 민감한 정보가 없는지 확인하세요.

함께 쓰면 좋은 도구

전체 도구 바로가기

손으로 익히기

문서 · 데이터 변환

개발 실무

한국 개발 특화

API · 네트워크

이미지 · 색상