본문으로 건너뛰기
123도구

JSON Formatter · Validator

JSON을 들여쓰기로 정리하거나 한 줄로 줄이고, 오류가 난 줄과 칸을 짚어 줍니다. 트리로 구조를 훑어볼 수 있습니다.

  • 파일·입력값이 서버로 전송되지 않음
  • 가입 없이 무료
130 B

올바른 JSON · 키 8개 · 깊이 2

결과

{
  "id": 1024,
  "name": "123 도구",
  "tags": [
    "json",
    "formatter"
  ],
  "active": true,
  "owner": {
    "team": "platform",
    "members": 3
  },
  "deletedAt": null
}

183 B · 객체 2 · 배열 1

입력한 JSON은 브라우저 안에서만 처리됩니다. 그래도 민감한 운영 토큰, 비밀번호, API 키는 입력하지 마세요.

사용 방법

  1. 왼쪽 입력칸에 JSON을 붙여 넣거나 ‘파일 열기’로 .json 파일을 엽니다.
  2. 입력하는 즉시 문법을 검사합니다. 오류가 있으면 몇 번째 줄, 몇 번째 칸인지와 이유를 알려줍니다.
  3. 위의 정렬, 한 줄로, 트리 중 원하는 형태를 고릅니다. 들여쓰기 폭과 키 정렬도 바꿀 수 있습니다.
  4. 결과를 복사하거나 .json 파일로 내려받습니다.

계산 기준과 공식

검사는 브라우저에 내장된 JSON.parse로 하므로 표준(RFC 8259)과 정확히 같은 규칙을 따릅니다. 아래는 JSON에서 자주 틀리는 규칙입니다.

  • 키 이름과 문자열은 반드시 큰따옴표(")로 감쌉니다. 작은따옴표는 안 됩니다.
  • 마지막 항목 뒤에 쉼표를 남기면 안 됩니다.
  • 주석(// 또는 /* */)을 쓸 수 없습니다.
  • undefined, NaN, Infinity는 값이 될 수 없습니다. null을 쓰세요.

‘키 이름순 정렬’은 객체 안의 키를 사전순으로 재배열합니다. 배열 순서는 바꾸지 않습니다. 두 JSON을 비교하기 전에 켜 두면 차이를 찾기 쉽습니다.

예시

  1. 끝에 쉼표가 남은 JSON

    { "name": "kim", "age": 31, }

    4번째 줄 1번째 칸에서 오류가 납니다. 마지막 항목 뒤에 쉼표(,)가 남아 있습니다. JSON은 끝 쉼표를 허용하지 않습니다.

  2. API 응답을 한 줄로 줄이기

    보기 좋게 정리된 JSON을 ‘한 줄로’로 바꾸면 줄바꿈과 공백이 모두 빠집니다. 환경 변수나 curl 명령에 JSON을 넣을 때, 로그 한 줄에 담을 때 쓰면 편합니다. 들여쓰기 2칸으로 1KB인 JSON은 보통 30~40% 줄어듭니다.

결과를 읽는 법

올바른 JSON이 뜨면 다른 프로그램에서도 그대로 읽을 수 있습니다. 키 개수와 깊이는 구조가 얼마나 복잡한지 보여줍니다. 깊이가 10을 넘으면 데이터 구조를 다시 생각해 볼 만합니다.

오류 위치는 파서가 ‘더 이상 읽을 수 없게 된 곳’입니다. 실제 실수는 그 바로 앞 줄에 있는 경우가 많습니다.

자주 묻는 질문

입력한 JSON이 서버로 전송되나요?

아니요. 정리, 검사, 트리 보기 모두 브라우저 안에서 처리하며 입력한 내용은 어디에도 보내거나 저장하지 않습니다. 그래도 운영 환경의 토큰, 비밀번호, API 키는 습관적으로 붙여 넣지 않는 것이 안전합니다.

숫자가 바뀌어서 나와요.

JavaScript 숫자는 2의 53제곱(약 9천조)보다 큰 정수를 정확히 표현하지 못합니다. 아주 큰 ID 값은 정리 과정에서 끝자리가 바뀔 수 있으니 이런 값은 문자열로 주고받는 것이 좋습니다.

주석이 들어간 설정 파일(JSONC)도 되나요?

표준 JSON은 주석을 허용하지 않아 오류로 표시됩니다. tsconfig.json이나 VS Code 설정처럼 주석이 들어간 파일은 주석을 지운 뒤 넣어야 합니다.

아주 큰 JSON도 처리할 수 있나요?

브라우저가 멈추지 않도록 5MB까지 처리합니다. 트리 보기는 배열과 객체를 200개씩 나눠서 보여주고, ‘더 보기’로 나머지를 펼칠 수 있습니다.

결과가 이상하거나 있었으면 하는 기능이 있나요? 오류 제보 · 의견 보내기