TIL

[TIL] JSON

youngble 2022. 2. 11. 17:16

JSON (JavaScript Object Notation)

JavaScript Object Notation라는 의미의 축약어로 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식

 

서버와 데이터를 주고받을때 보통 JSON형식으로 보내준다. (또는 XML)

또한 api를통해 받은 정보들을 localStoragesessionStorage 에 데이터를 저장할때 따로 설정이없다면 객체의 값은 string형식으로 저장이 된다.

 

예시

현재 프로젝트에서 localStorag에 담아 사용중인 키값들

LocalStorage를 콘솔로그 출력화면

 

만약 내가 원하는 값이 boolean 형식이거나 number, object등 다른 타입이라면 저장했다가 쓸때 하나의 문자열로만 되어있기때문에 정확하게 쓸수없다.

따라서 이럴때 JSON.parse()를 사용하여 JSON문자열타입Javascript에서 쓸수있는 기존 데이터값이나 객체로 변환해서 쓸수있다. 반대로 Javascript 값이나 객체를 JSON문자열로 만들어주고싶다면 JSON.stringfy()를 통해 변환해줄수있다. 

let jsonText= '{ "name": "Someone else", "lastName": "Kim", "boolean": true }'

위와같이 ''안에 string타입JSON을 만들었다고 하자.

console.log(jsonText,typeof jsonText)

콘솔로그를 통해 jsonText 와 그 타입을 출력해보면

이런형태로 뜬다.

이렇게됐을때 만약 boolean안에있는 true를 사용하여 참과거짓을 비교한다고했을때 문자열인 상태이므로 쓸수가없다.

let obj= JSON.parse(jsonText)
 console.log(obj,typeof obj)

따라서 위와같이 파싱을 해보고 다시 콘솔로그에 찍어보면

이렇게 JS의 객체형식으로 데이터를 쓸수있게 된다.

'TIL' 카테고리의 다른 글

[TIL] node.js 이용 서버구축 하기  (0) 2022.02.18
[TIL] SQL, NoSQL  (0) 2022.02.18
[TIL] XML, JSX, Babel(바벨)  (0) 2022.02.15
[TIL] Optional chaining ES11문법  (0) 2022.02.13
[TIL] 중고나라 코딩테스트, 서류통과  (0) 2022.02.10