JSON은 JavaScript Object Notation의 줄임말로 데이터 교환으로 만들어진 객체형태의 포맷이다. JSON이 자바스크립트 객체 문법과 매우 유사하지만 자바스크립트 아니더라도 JSON을 읽고 쓸 수 있는 기능이 다수의 프로그래밍 환경에서 제공된다.
메세지 객체가 전송 가능하려면 메시지를 보내는 발신자와 메시지를 받는 수신자가 같은 프로그램을 사용하거나 문자열처럼 범용적으로 읽을수 있는 형태여야 한다.
-수신자와 발신자가 같은 프로그램을 사용한다
-또는 문자열처럼 범용적으로 읽을 수 있어야 한다
객체는 타입변환을 이용해 String으로 변환할 경우 객체 내용을 포함하지 않는다.JavaScript에서 객체에 메소드 message.toString()나 형변환 Stirng(message)을 시도하면 [Object Object]라는 결과를 리턴한다. 이 문제를 해결하기 위해 사용하는 것이 JSON이다.
-JSON.stringify : Object type을 JSON으로 변환한다 (직렬화-serialize)
-JSON.parse: JSON을 Object type으로 변환한다.(역직렬화-deserialize)
stringify로 string화 하였다라면 parse를 이용해 다시 객체화 하는 것이다.
Input ->serialized ->Desrialized
자바스크립트 객체
키: 키는 따옴표 없이 쓸수 있음
문자열 값: 문자열 값은 어떠한 형태의 따옴표도 사용가능 ("",'')
JSON
키:반드시 쌍따움표를 붙여야 함
문자열 값:반드시 쌍따옴표로 가마야 함
또 JSON은 키와 값 사이 그리고 키-값 사이에는 공백이 있어서는 안된다.