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]에 서울이란 값을 넣어줌으로써 항목과 값을 추가한다.