Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 알티노
- 드론
- 콜백함수
- Spring Security
- 초등학교 코딩수업
- 2024우먼테크위크
- 자율주행자동차
- 초등학생 코딩수업
- 코딩수업
- html
- CSS
- transaction
- 은평구립도서관
- 2023 ICT R&D 주간
- 코딩부트캠프
- Java
- 핑퐁로봇
- 도서관 수업
- spring
- 이것이 자바다
- 초등학생 겨울방학 놀이
- js
- spring boot
- 스마트리움
- jsp
- 2024겨울방학 코딩부트캠프
- Cos Pro
- 뚜루뚜루
- 서울시여성가족재단
- 자바
Archives
- Today
- Total
블로그
JSON, JSON 문자열 본문
JSON 문자열
- 구조화된 데이터를 표현하는 특정 형식을 가진 문자열
// JSON 문자열 예시
{
"name": "John",
"age": 30,
"isStudent": false
}
구문 규칙
- 키-값 쌍으로 구성
- 키(property)는 항상 큰따옴표(")로 감싸야 한다.
- 값(value)은 특정 형식(문자열,숫자,객체,배열,true,false,null)을 따라야 한다.
데이터 타입
- JSON은 숫자, 문자열, 객체, 배열, 불리언, null 타입을 지원
- 일반 문자열은 이러한 타입 구분이 없다.
JSON
정의
- JavaScript Object Notation, 경량의 데이터 교환 형식
- 사람이 읽고 쓸 수 있을 뿐 아니라 기계에서도 쉽게 분석하고 생성할 수 있도록 설계되었다.
- JavaScript 언어를 기반으로 하지만 언어 독립적으로 사용될 수 있다.
역할
- 데이터 교환 : 서버와 클라이언트 간 데이터 교환에 사용된다.
- 구조화된 데이터 표현 : 구조화된 데이터를 저장하고 표현하기 위한 용도로 사용된다.
- 이는 데이터베이스와 파일 시스템 간의 데이터 전송 등 다양한 환경에서 유용하다.
JSON의 종류
- 기본적으로 객체와 배열의 두 가지 구조를 가진다.
- 객체 : {} 중괄호로 감싸며, 키-값 쌍으로 구성된다.
- 배열 : [] 대괄호로 감싸며, 값의 목록으로 구성된다.
// 객체(Object)
{
"name": "John",
"age": 30,
"isStudent": false
}
// 배열(Array)
[
"apple",
"banana",
"cherry"
]
JSON 데이터를 다루는 방법
- 직렬화 (Serialization), 인코딩(Encoding) : 객체 -> 문자열 또는 바이너리 형식으로 변환하는 과정
- 변환된 데이터는 파일로 저장하거나 네트워크를 통해 전송할 수 있다.
- 역직렬화 (Deserialization), 디코딩(Decoding) : 문자열 또는 바이너리 데이터를 다시 객체로 변환하는 과정.
- 네트워크를 통해 수신한 데이터나 파일로부터 데이터를 읽어들일 때 사용됩니다.
- JSON.stringify(): 객체를 JSON 문자열로 변환하는 메서드. 즉, JSON 직렬화를 수행한다.
- JSON.parse(): JSON 문자열을 객체로 변환하는 메서드. 즉, JSON 역직렬화를 수행한다.
직렬화란?
직렬화의 정확한 의미
직렬화는 객체를 특정 형식(문자열 또는 바이너리)으로 변환하는 과정이다. JSON은 그 중 하나의 형식일 뿐이다.
JSON과 직렬화의 관계
- JSON 직렬화: 객체를 JSON 형식의 문자열로 변환하는 것을 말한다. JSON 문자열은 사람이 읽을 수 있는 텍스트 형식으로 저장된다.
- 일반적인 직렬화: 객체를 JSON뿐만 아니라 XML, Protocol Buffers, BSON 등 다양한 형식으로 직렬화할 수 있다.
바이너리 데이터 처리
- JSON 자체는 텍스트 기반의 형식이며, 바이너리 데이터를 직접적으로 지원하지 않는다.
- 다만, 바이너리 데이터를 JSON에 포함시키기 위해 Base64와 같은 인코딩 방법을 사용하여 문자열로 변환할 수 있다.
'개발자 준비과정 > Javascript, React' 카테고리의 다른 글
[JavaScript] truthy,falsy 이해하기 (2) | 2024.07.23 |
---|---|
[React] 카카오 우편번호 API (0) | 2024.07.19 |
[JS] 화살표 함수의 명시적 반환, 암묵적 반환 (0) | 2024.06.28 |
React의 특수 prop, children (0) | 2024.05.23 |
React routee: useParams(), useSearchParams(), useNavigate() (0) | 2024.05.22 |