JSON 포매터 & 문법 검사
JSON(선택적으로 JSONP)을 검증하고 문법 오류를 확인합니다.
JSONP가 감지되면 JSONP로 처리
- 안전
- 모든 처리는 사용 중인 기기에서 이루어지며 입력값과 결과는 외부로 전송되지 않습니다.
JSON 문법 규칙
기본 규칙
- 문서 전체를 { } 중괄호로 감쌉니다.
- 각 항목은 :로 연결된 키/값 쌍입니다.
- 각 쌍 사이에는 쉼표를 사용하되 마지막 쌍 뒤에는 넣지 않습니다.
- 키는 큰따옴표로 감싸야 합니다.
- 값에는 여러 자료형을 사용할 수 있으며 문자열은 큰따옴표로 감싸야 합니다.
{
"id": 123,
"name": "Taro Yamada",
"registered": true,
"nickname": null,
"skills": [
"html",
"JavaScript"
],
"contact": {
"phone": "0X0-123-456",
"email": "taro@xxxxx.jp"
}
}값에 사용할 수 있는 자료형
| 자료형 | Example | 참고 |
|---|---|---|
| 문자열 | "name": "Taro Yamada" | 큰따옴표로 감싸야 하며 작은따옴표는 사용할 수 없습니다. |
| 숫자 | "id": 123 | NaN과 Infinity는 사용할 수 없습니다. |
| 불리언 | "registered": true | 소문자 true / false만 사용할 수 있습니다. |
| null | "nickname": null | 소문자 null만 사용할 수 있습니다. |
| 배열 | "skills": ["html", "JavaScript"] | 배열 요소에는 문자열, 숫자, 불리언, null, 배열 또는 객체를 사용할 수 있습니다. |
| 객체 | "contact": { "phone": "0X0-123-456", "email": "taro@xxxxx.jp" } | 객체 안에 객체를 중첩할 수 있습니다. |
참고: JSON에는 undefined 자료형이 없습니다.
패턴
배열
[ ] 안에는 서로 다른 자료형의 요소를 넣을 수 있습니다.
["text", 123, true, false, null]요소로 객체를 넣을 수도 있습니다.
[
{
"id": 1001,
"name": "Steve Jobs"
},
{
"id": 1002,
"name": "Bill Gates"
}
]객체
{ } 안의 값에는 허용된 모든 자료형을 사용할 수 있습니다.
{
"id": 123,
"name": "Taro Yamada",
"registered": true,
"nickname": null
}객체를 중첩할 수 있습니다.
{
"id": 123,
"name": "Taro Yamada",
"contact": {
"phone": "0X0-123-456",
"email": "taro@xxxxx.jp"
}
}객체 안에 배열을 넣을 수도 있습니다.
{
"id": 123,
"name": "Taro Yamada",
"skills": [
"html",
"JavaScript"
]
}자주 발생하는 오류
키의 따옴표 누락
키는 큰따옴표로 감싸야 합니다. 2번째 줄의 id를 "id"로 수정하세요.
1{
2 id: 123,
3 "name": Taro Yamada
4}문자열 값의 따옴표 누락
문자열 값은 큰따옴표로 감싸야 합니다. 3번째 줄의 Taro Yamada를 "Taro Yamada"로 수정하세요.
1{
2 "id": 123,
3 "name": Taro Yamada
4}문자열 값의 따옴표가 올바르지 않음
문자열 값은 작은따옴표로 감쌀 수 없습니다. 3번째 줄의 'Taro Yamada'를 "Taro Yamada"로 수정하세요.
1{
2 "id": 123,
3 "name": 'Taro Yamada'
4}마지막 쉼표
마지막 키/값 쌍의 끝에는 쉼표를 사용할 수 없습니다. 4번째 줄의 "Tokyo",를 "Tokyo"로 수정하세요.
1{
2 "id": 123,
3 "name": "Taro Yamada",
4 "address": "Tokyo",
5}