JSON 표기법으로 데이터를 받게 되면 데이터는 문자열방식으로 받게 된다.
그냥 object { } 형식에서는 notice.title 하면 hello가 문제 없이 출력되지만 위와 같이 '' 문자열 형식으로 받게 되면
notice.title이 undefined가 되어버린다.
그럴 때 사용할 수 있는 eval 함수.
' var x = 30; ' 이렇게 문자열에 담긴 x값은 바로 출력할 수 없음.
eval로 파싱해줘야한다.
따라서 다운받은 데이터를 사용할 때에
이렇게 하면 값 0.6이 출력 되는 것을 볼 수 있다.
실습해봤는데.ㅋㅋ
문제가 있을거라 생각했지만
2020-10-01을 출력하고 싶다면
문자열에 담아주기
혹은 -를 포기하기
eval() 은 자바스크립트 코드를 실행해주는 기능이지 JSON을 파싱하는 용도는 아니다.
따라서 JSON형태의 데이터를 파싱할 때에는 JSON파서를 이용하는 것이 더욱 바람직 하겠다.
key 값에 반드시 ""로 감싸준 정확한 문자열 형태로 작성하여 사용하면 data.title은 aaa값이 나옴.
그러나 우리가 보통 쓰는 형태의 데이터는 data2와 같은 형태이기 때문에 json 변수에 문자열로 변환해주는 함수로 변환하면 json은 "data"2 , "title":"bbb"로 자동변환된다. (키값에 ""이 들어감)
와... 지금 뉴렉쌤 유튭채널보고 복습주인데 진짜 갓렉처..
그냥 매 강의마다 감탄만 나옴.
'Javascript' 카테고리의 다른 글
for-in 문 쓰는 법 (0) | 2021.04.17 |
---|---|
자바스크립트 변수 , 연산자 , JSON 표기법(XML, CSV보다 간편하고 직관적인 데이터 표현방식) (0) | 2021.04.17 |
프로그래밍 세계에서의 언어, 플랫폼, API 용어 정리 (0) | 2021.04.14 |