본문 바로가기

JSON

JSON이란?

JSON은 JavaScript Object Notation의 약자로 데이터를 쉽게 교환하고 저장하기 위한

텍스트 기반 데이터 교환 형식이다.

 

▶JSON의 특징

JSON은 텍스트 기반이기 때문에 다양한 프로그래밍 언어에서 사용할 수 있다.

JSON은 JavaScript의 문법과 아주 유사하지만 텍스트 형식일 뿐, 똑같지 않다.

서버와 클라이언트 간 교류에서 일반적으로 많이 사용된다.

 

▶JSON의 문법

JSON의 기본형태는 아래와 같이 Key(키)와 Value(값)로 이루어져 있다.

{key:value}

 여러 데이터를 나열할 경우에는 쉽표(,)를 사용하고 Object는 {}중괄호로 묶어서 표현하고, Array는 []대괄호로

묶어서 표현한다.

 

 

JSON은 크게 Object를 JSON으로 바꾸는 Serialize(직렬화)와 JSON을 다시 Object로 바꾸는 Deserialize(역직렬화)로

나눌 수 있다.

 

  • JSON.stringify(JSON 형식(문자열)으로 변환할 값) : JavaScript Object를 JSON 텍스트로 변환한다.
  • JSON.parse(JSON 형식의 텍스트) :JSON 형식의 텍스트를 JavaScript Object로 변환한다.

 

▶Serialize의 예

json = JSON.stringify(['apple'],['banana']); 
console.log(json);

위처럼 ['apple'],['banana']이란 JavaScript 배열을 JSON으로 Stringfy하게 되면 ["apple"]이란 JASON 표기법으로

변환된다.

const person = {
	name: 'john', job:'doctor',age:25,birthDate: new Date()
}

json = JSON.stringfy(person);
console.log(json);

또 다른 예를 들어보면 person이란 한 사람의 데이터를 Stringfy하고 console.log를 한 결과, 다음과 같이 JSON 형태가 나타난다. 

'{"name":"john","job":"doctor","age":25,"birthDate":"2022-11-22T10:50:29.953Z"}'

 

 

Deserialize의 예

json =JSON.stringfy(rabbit);
const obj = JSON.parse(json);
console.log(obj);

Deserialize는 매우 간단하다 parse() 안에 json 텍스트 만 넣어주면 끝이다.

 

 

JSON 텍스트에 항목과 값 추가하는 법

var key= "근무지";
person[key] = "서울";

위와 같이  key값으로 근무지란 항목을 var 선언하고 person[key]에 서울이란 값을 넣어줌으로써 항목과 값을 추가한다.