기본 패턴
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" |
| number | 42, 3.14, 1e6 |
| boolean | true, false |
| null | null |
| object | { "x": 1 } |
| array | [1, 2, 3] |
주의할 점
JSON의 null은 값의 한 종류이지 "키가 없음"과 같지 않습니다. 또 true, false,
null은 반드시 소문자로 써야 하므로, 언어 문법 감각대로 대문자를 섞으면 바로
파싱 오류로 이어질 수 있습니다.
참고 링크
2 sources