JSON
JSON.stringify
JSON.parse
JSON은 JavaScript Object Notation의 줄임말로, 데이터 교환을 위해 만들어진 객체 형태의 포맷이다.
JSON 구조는 재귀 함수를 사용할 수 있는 Tree 구조이다
JSON.stringify
: Object type을 JSON으로 변환
JSON.parse
: JSON을 Object type으로 변환
[코드] message 객체를 JSON으로 변환하는 메소드 JSON.stringify
let transferableMessage = JSON.stringify(message) console.log(transferableMessage) // `{"sender":"김코딩","receiver":"박해커","message":"해커야 오늘 저녁 같이 먹을래?","createdAt":"2021-01-12 10:10:10"}` console.log(typeof(transferableMessage)) // `string`
stringify하는 이 과정을 직렬화(serialize)한다고 합니다
seriealize
: 직렬화
deserialize
: 역직렬화
- | 자바크스립트 객체 | JSON |
---|---|---|
키 | 키는 따옴표 없이 쓸 수 있음 | 반드시 큰 따옴표를 붙여야 함 |
문자열 값 | 문자열 값은 어떠한 형태의 따옴표도 사용 가능 | 반드시 큰 따옴표로 감싸야 함 |
* 또한 JSON은 키와 값 사이, 그리고 키-값 쌍 사이에는 공백이 있어서는 안됩니다.
* undefind와 function은 JSON으로 생략되거나 null 로 변환됩니다.
JSON.tringify 메소드를 함수의 형태로 직접 구현해보는 과제를 진행하였는데,
구현하기 위해 재귀를 사용하여서 풀었는데 쉬운듯 어려웠다.
JSON은 대표적인 트리구조여서 전형적인 재귀탐색이 가능한 구조라고 배웠는데, 아직 이 부분은 조금 이해가 필요한듯 하다.
규칙에 맞추어 변화시키는것도 쉬운것은 아닌듯 하다
오전에 풀었던 과제를 주석을 작성해가며 복습해야겠다.