본문 바로가기

CS

데이터교환형식 JSON과 직렬화와 역직렬화

JSON이란? javascript 객체 문법으로 구조화된 데이터 교환 형식, python, javascript, java 등 여러 언어에서 데이터 교환형식으로 쓰이며 객체 문법말고도 단순 배열, 문자열도 표현 가능

1. Javascript 객체 문법

  1. key와 value로 구성됨
  2. 이미 존재하는 key를 중복선언할 경우 나중에 선언한 해당 key에 대응하는 value가 덮어쓰이게 됨

Json으로 작성했을때 kundol이라는 값을 꺼내고 싶을때 어떻게 할까?

[
	{
		"name":"kundol",
		"age" :30,		
	},
	{
		"name":"yang",
		"age" :20,		
	},
];

둘 다 같은 값을 뽑아낼 수 있다!

2. 데이터 + 교환형식

  1. 데이터는 추상적인 아이디어에서부터 시작해 구체적인 측정에 이르기까지 다양한 의미로 쓰입니다. 실험,조사,관찰 등으로 부터 얻은 사실이나 자료 등을 의미

3. 여러언어에서의 독립적으로 쓰임

  1. 객체, 해시테이블, 딕셔너리 등으로 변환되어 사용

4. 단순 배열, 문자열 표현

ex. [1,2,3] , ’kundol is king god general’

JSON의 타입

javascript Object와 유사하지만 undefined, 메서드 등을 포함하지 않음

  • Number
  • String
  • Boolean
  • Array
  • Object
  • null

JSON의 타입

직렬화란 외부의 시스템에서도 사용할 수 있도록 바이트 형태로 데이터를 변환하는 기술이며 역직렬화는 반대를 의미

  • 역직렬화
    • JSON.parse();
  • 직렬화 : 외부 시스템에서 사용할 수 있게끔 만들어주는 것
    • JSON.stringify();

JSON의 활용

JSON은 프로그래밍 언어와 프레임워크 등에 독립적이므로, 서로 다른 시스템간에 데이터를 교환하기에 좋습니다. 주로 API의 반환형태, 시스템을 구성하는 설정파일에 활용됩니다.

ex. 업비트의 api, package.json

JSON이란? javascript 객체 문법으로 구조화된 데이터 교환 형식, python, javascript, java 등 여러 언어에서 데이터 교환형식으로 쓰이며 객체 문법말고도 단순 배열, 문자열도 표현 가능

1. Javascript 객체 문법

  1. key와 value로 구성됨
  2. 이미 존재하는 key를 중복선언할 경우 나중에 선언한 해당 key에 대응하는 value가 덮어쓰이게 됨

Json으로 작성했을때 kundol이라는 값을 꺼내고 싶을때 어떻게 할까?

[
	{
		"name":"kundol",
		"age" :30,		
	},
	{
		"name":"yang",
		"age" :20,		
	},
];

둘 다 같은 값을 뽑아낼 수 있다!

2. 데이터 + 교환형식

  1. 데이터는 추상적인 아이디어에서부터 시작해 구체적인 측정에 이르기까지 다양한 의미로 쓰입니다. 실험,조사,관찰 등으로 부터 얻은 사실이나 자료 등을 의미

3. 여러언어에서의 독립적으로 쓰임

  1. 객체, 해시테이블, 딕셔너리 등으로 변환되어 사용

4. 단순 배열, 문자열 표현

ex. [1,2,3] , ’kundol is king god general’

JSON의 타입

javascript Object와 유사하지만 undefined, 메서드 등을 포함하지 않음

  • Number
  • String
  • Boolean
  • Array
  • Object
  • null

JSON의 타입

직렬화란 외부의 시스템에서도 사용할 수 있도록 바이트 형태로 데이터를 변환하는 기술이며 역직렬화는 반대를 의미

  • 역직렬화
    • JSON.parse();
  • 직렬화 : 외부 시스템에서 사용할 수 있게끔 만들어주는 것
    • JSON.stringify();

JSON의 활용

JSON은 프로그래밍 언어와 프레임워크 등에 독립적이므로, 서로 다른 시스템간에 데이터를 교환하기에 좋습니다. 주로 API의 반환형태, 시스템을 구성하는 설정파일에 활용됩니다.

ex. 업비트의 api, package.json

'CS' 카테고리의 다른 글

데이터교환형식 XML  (0) 2024.08.21
Node.js를 이용한 간단한 API구축  (0) 2024.08.20
API란?  (0) 2024.08.08