EN
guide

JSON이 뭔가요? 초보자를 위한 완벽 가이드

2026-04-01 · 5분 읽기

JSON이란 무엇인가?

**JSON(JavaScript Object Notation)**은 데이터를 저장하고 교환하기 위한 경량 텍스트 형식입니다. 이름에 “JavaScript”가 들어가 있지만, 사실 언어에 관계없이 어디서나 사용할 수 있는 범용 형식입니다. Python, Java, PHP, Go, Ruby — 모든 주요 프로그래밍 언어에서 JSON을 읽고 쓸 수 있습니다.

JSON은 2000년대 초반 더글러스 크록포드(Douglas Crockford)가 제안했으며, 지금은 웹 API, 설정 파일, 데이터베이스 응답 등 거의 모든 곳에서 표준처럼 사용됩니다.


JSON 기본 문법

JSON은 두 가지 구조를 기반으로 합니다.

  • 객체(Object): 키-값 쌍의 집합. 중괄호 {} 로 감쌉니다.
  • 배열(Array): 순서가 있는 값의 목록. 대괄호 [] 로 감쌉니다.

지원하는 데이터 타입

타입예시
문자열(String)"hello"
숫자(Number)42, 3.14
불리언(Boolean)true, false
nullnull
객체(Object){ "key": "value" }
배열(Array)[1, 2, 3]

기본 예시

{
  "name": "홍길동",
  "age": 30,
  "isStudent": false,
  "hobbies": ["독서", "코딩", "등산"],
  "address": {
    "city": "서울",
    "zipCode": "03000"
  },
  "profileImage": null
}

이 예시처럼 JSON은 사람도 읽기 쉽고, 컴퓨터도 파싱하기 쉬운 구조입니다.


JSON은 어디에 사용되나요?

1. 웹 API 응답

가장 흔한 사용처입니다. 예를 들어 날씨 앱이 서버에 현재 날씨를 요청하면, 서버는 다음과 같은 JSON을 돌려줍니다.

{
  "location": "Seoul",
  "temperature": 18,
  "condition": "맑음",
  "humidity": 55
}

2. 설정 파일

package.json, tsconfig.json, .eslintrc.json 등 개발 도구 설정 파일에 널리 쓰입니다.

{
  "name": "my-project",
  "version": "1.0.0",
  "scripts": {
    "start": "node index.js",
    "test": "jest"
  }
}

3. 데이터 저장 및 전송

서버와 클라이언트 간 데이터를 주고받을 때, 혹은 로컬 스토리지에 데이터를 저장할 때도 JSON 형식을 사용합니다.


JSON 문법 규칙 — 반드시 지켜야 할 것들

JSON은 엄격한 문법을 가지고 있습니다. 규칙을 어기면 파싱 오류가 발생합니다.

규칙 1: 키는 반드시 큰따옴표로 감싸야 한다

// 잘못된 예 (작은따옴표 사용)
{ 'name': '홍길동' }

// 올바른 예
{ "name": "홍길동" }

규칙 2: 마지막 항목 뒤에 쉼표를 붙이지 않는다 (trailing comma 금지)

// 잘못된 예
{
  "a": 1,
  "b": 2,    쉼표가 오류를 일으킴
}

// 올바른 예
{
  "a": 1,
  "b": 2
}

규칙 3: 주석을 사용할 수 없다

JSON은 ///* */ 주석을 지원하지 않습니다. 주석이 필요하다면 JSON5나 JSONC 형식을 사용해야 합니다.

규칙 4: 문자열은 반드시 큰따옴표

작은따옴표(')나 백틱(`)은 JSON에서 유효하지 않습니다. 항상 큰따옴표(")를 사용해야 합니다.


자주 하는 실수와 해결 방법

실수 1: 특수문자 이스케이프 누락

문자열 안에 큰따옴표나 백슬래시가 있다면 이스케이프해야 합니다.

{
  "message": "그가 말했다, \"안녕하세요\"",
  "path": "C:\\Users\\hong\\Documents"
}

실수 2: undefined 사용

JavaScript에서 undefined는 JSON으로 직렬화할 수 없습니다. 값이 없음을 표현할 때는 null을 사용하세요.

실수 3: 숫자를 문자열로 저장

// 나쁜 예 — 나중에 계산할 때 타입 변환 필요
{ "price": "1000" }

// 좋은 예
{ "price": 1000 }

JSON 유효성 검사 방법

작성한 JSON이 올바른지 확인하려면:

  1. 온라인 JSON 포매터/검증기 사용 — 이 사이트의 JSON 포매터 도구를 사용하면 즉시 확인할 수 있습니다.
  2. 브라우저 개발자 도구 — 콘솔에서 JSON.parse('...') 를 실행해보세요. 오류가 없으면 유효한 JSON입니다.
  3. 코드 에디터 플러그인 — VS Code에는 JSON 유효성 검사가 내장되어 있습니다.

JSON vs XML — 무엇이 다를까?

과거에는 XML이 데이터 교환의 표준이었습니다. 하지만 JSON이 대부분의 경우 더 선호됩니다.

비교 항목JSONXML
가독성높음보통
파일 크기작음
파싱 속도빠름느림
주석 지원없음있음
스키마 검증JSON SchemaXSD

대부분의 현대 REST API는 JSON을 사용합니다. XML은 SOAP 프로토콜이나 레거시 시스템에서 여전히 사용됩니다.


마무리

JSON은 현대 웹 개발에서 빠질 수 없는 핵심 기술입니다. 문법이 단순하고 사람이 읽기 편하며, 모든 언어에서 지원하기 때문에 데이터 교환의 사실상 표준이 되었습니다.

JSON을 다루다 복잡하게 중첩된 구조를 보기 좋게 정리하고 싶다면, JSON 포매터 도구를 사용해보세요. 한 번의 클릭으로 들여쓰기와 색상 강조로 JSON을 훨씬 읽기 쉽게 만들어줍니다.