배열을 맞게 사용한 거 같은데 오류가 발생합니다 채택완료
api에서 데이터를 넘겨받아 사용하려고 하는데
콘솔창에 다음과 같은 에러가 발생했습니다.
파일이름:428 Uncatched TypeError: 정의되지 않은 속성('0' 읽기)을 읽을 수 없습니다.
api에서 넘겨받은 데이터를 콘솔에 그대로 출력하면 다음과 같이 나옵니다.
콘솔 출력: console.log(data);
</strong></p>
<p>{</p>
<p> "code":"SUCCESS",</p>
<p> "msg":"정상처리되었습니다",</p>
<p> "data":[</p>
<p> {"mb_no":1,"mb_name":"철수"},</p>
<p> {"mb_no":4, <span style="font-size: 0.875em;">"mb_name":"혜수"},</span></p>
<p><span style="font-size: 0.875em;"> {"mb_no":3,"mb_name":"민수"}</span></p>
<p><span style="font-size: 0.875em;"> ]</span></p>
<p><span style="font-size: 0.875em;">}</span></p>
<p><strong style="font-size: 0.875em;">
데이터를 사용하기 위해 data["data"][0]["mb_name"]를 사용하려고 했는데 오류가 났습니다.
어디서 잘못된 건지 모르겠어서 질문 드립니다.
고수님들 도와주세요 ㅠㅠ
답변 3개
데이터 타입의 문제였습니다!!
ajax에서 데이터를 받을 때 string 값으로 넘어오고 있었어요...
받는 데이터 타입을 json 값으로 받도록 설정해서 해결했습니다.
댓글을 작성하려면 로그인이 필요합니다.
aa=JSON.parse(`{
"code":"SUCCESS",
"msg":"정상처리되었습니다",
"data":[
{"mb_no":1,"mb_name":"철수"},
{"mb_no":4, "mb_name":"혜수"},
{"mb_no":3,"mb_name":"민수"}
]
}`);
aa['data'][0]['mb_name'];
'철수'
정상입니다.
javascript 소스에 문제가 있는 거 아닐까요?
답변에 대한 댓글 2개
'철수'
console.log( aa['data'][0]['mb_name']);
VM868:1 철수
undefined
정상입니다.
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
그 바로 아래 줄에
console.log(data["data"][0]["mb_name"])를 하면 오류가 납니다 ㅠㅠ
도대체 뭐가 문제인 건지...