JSON기초와 문법

values와 literals

JSON이 허용하는 여섯 가지 values와 true, false, null literal의 규칙, 최상위 값 제한을 정리합니다.

마지막 수정 2026년 3월 20일

기본 패턴

json
[
  "text",
  42,
  true,
  null,
  { "x": 1 },
  [1, 2, 3]
]

설명

  • JSON 값은 string, number, boolean, null, object, array의 여섯 종류로 나뉩니다.
  • true, false, null은 예약된 literal이며 모두 소문자여야 합니다. True, FALSE, NULL 같은 표기는 JSON이 아닙니다.
  • RFC 8259 기준으로 JSON text는 하나의 직렬화된 값으로 구성됩니다. 즉 최상위가 object나 array여야만 하는 것은 아닙니다.
  • 다만 실제 상호운용성 측면에서는 최상위를 object나 array로 두는 경우가 가장 일반적입니다.
  • 값 종류를 먼저 정확히 구분해 두면, 나중에 Schema나 API 설계에서 type, required, nullable 같은 규칙을 훨씬 명확하게 잡을 수 있습니다.

짧은 예제

text
유효한 JSON text 예
"hello"
42
false
null
{"ok": true}
[1, 2, 3]

빠른 정리

값 종류예시
string"hello"
number42, 3.14, 1e6
booleantrue, false
nullnull
object{ "x": 1 }
array[1, 2, 3]

주의할 점

JSON의 null은 값의 한 종류이지 "키가 없음"과 같지 않습니다. 또 true, false, null은 반드시 소문자로 써야 하므로, 언어 문법 감각대로 대문자를 섞으면 바로 파싱 오류로 이어질 수 있습니다.

참고 링크

2 sources