일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- javascript 객체리터럴
- react.js
- javascript
- React component
- JSON
- node 특징
- 화살표함수
- react refresh 설치
- react webpack 설치
- react class hook 비교
- class vs hooks
- Component
- MVC패턴
- 클래스형과 함수형 컴포넌트
- webpack
- react props
- prop-types
- react
- props 개념
- 객체 리터럴
- next.js
- react xcode 에러
- ES6
- react hook의 종류
- node express 라우팅
- react hook
- node.js
- Today
- Total
림찌의 개발일기 💻
JSON 이란 무엇일까? 본문
JSON 이 무엇인지 한 번 파해쳐보자.
지금까지 프로젝트를 작업하거나 공부를 하면서 자주 들었던 'JSON'. 데이터가 담긴 파일 형식이라는 것만 두루뭉실하게 알고 있었다. 이렇게만 알고 있어도 개발을 하는데에 큰 무리가 없었던 지라, 그냥 그렇게만 알고 있었는데 어느날 친구가 '그래서 JSON 이 뭔데?' 하고 물어봤을때, 속 시원하게 대답하지 못한게 마음에 걸려 이번에 제대로 알아보고자 한다.
우리는 클라이언트가 서버로 보내는 'Request(요청)'과 서버가 클라이언트로 보내는 'Response(응답)' 에 대해 알고 있을 것이다. 그리고 이 요청과 응답을 서로 주고 받을 때, 데이터가 담겨 있을 수 있다. 이 데이터를 서로 주고받기 위해 데이터가 담겨있는 '형식' 이 있다. 이 '형식' 중 하나가 바로 'JSON' 이다.
데이터를 주고 받는 형식은 'JSON'만 있는 것이 아니다. 예전엔 'XML' 이라는 형식을 주로 사용했고, 요즘들어 제일 많이 쓰이는 형식은 'JSON' 이다.
데이터를 주고 받는 형식? 🤔
사실, 데이터를 주고 받는 형식은 이 두가지 뿐만 아니라 여러 형식을 만들 수 있다. 그러나 이런 형식이 여러가지가 되어버리면 개발자들이 멘붕에 빠질 것이다. 데이터를 보내는 형식이 100개가 있고, 그 100개를 다 사용한다면 데이터를 요청하거나, 요청받은 데이터를 보내줄 때, 각각 다른 100개의 형식으로 보내준다면... 끔찍할 것이다. 😩그래서 유명한 형식을 함께 쓰게 된 것이다.
JSON 형식은 어떻게 보여질까?
{
key : value,
}
바로 이렇게, 중괄호 안에 'key 값' 과 'value 값' 이 들어가 있는 형태이다. key와 value 는 '콜론(:)' 으로 구별 된다. 데이터 처리를 해본 사람이라면 이 형식이 낯설지는 않을 것이다.
JSON 의 value 값으로 들어올 수 있는 타입은 다음과 같다.
1. String (문자열)
2. Number (숫자)
3. 불리언 (Boolean)
4. 객체 (Object)
5. 배열 (Array)
6. Null
예제로 알아보자면 이러하다.
{
"MemberId" : 1,
"id": "test",
"password": "test123@",
"nickname": "테스트 계정",
"hobby" : "코딩"
}
누군가가 어떤 사이트에 회원가입을 한 데이터를 JSON 형식으로 나타낸 것이다. 콜론을 기준으로 왼쪽이 key 값이고 오른쪽이 value 값이다. 그런데 만약 이러한 경우엔 데이터 형식이 어떻게 될까? 사용자의 취미가 여러개라 여러개의 취미 정보를 불러와야한다고 한다면...?
{
// 생략..
"hobby": ["코딩", "게임하기", "음악감상", "강아지 산책"]
}
여러 개의 데이터를 넣어야 한다면, 배열 형식으로 담아오면 된다. 이 배열안에는 객체가 들어가도 괜찮다.
{
member : [
{"name" : "test1", "age" : 16, "nickname" : "테스터"},
{"name" : "hilda", "age" : 27, "nickname" : "힐다"},
{"name" : "tory", "age" : 12, "nickname" : "토리"}
]
}
이런식으로 JSON 배열과 쉼표를 사용하여 객체를 나열할 수 있다.
앞으로 JSON 이 무엇이냐는 질문에는 다음과 같이 대답하면 될 것같다.
클라이언트와 서버에서 서로 요청과 응답을 주고 받을 때 필요한 데이터들을 주고 받는 형식 중 하나이다.
'Dev' 카테고리의 다른 글
[Git] vscode 연동시 해당 폴더외의 파일이 git souce control에서 보일때 (0) | 2021.09.06 |
---|