JQuery2015. 2. 26. 10:29

여러개의 Json파일에서 Json객체를 불러와 이 객체를 순차적으로 Array에 담는 소스를 구현했는데..

Json파일을 불러오는 API를 검색하니 나온게 jQuery의 getJSON..


for(var i = 0;i <jsonList.length;i++){

var jqxhr = $.getJSON(jsonList[i].jsonUrl, function(json) {

list.push(json);

pushList(json);

});

}


위와 같은 코드를 작성후 테스트 해보니..데이터를 아주 잘 읽어들이고 list의 데이터를 디버거로 확인해봐도 아주 잘 저장 되 있는것을 확인..하지만 소스 실행이 다 된 후 list에 접근하려 한때마다 Undefined가 발생하였다.

분면 콘솔에는 데이터가 아주 이쁘게 들어있는것을 확인했는데 왜이런 것일까..

해결은 getJson을 안쓰고 Ajax를 이용해서 해결함..

for문 돌면서 데이터를 가지고 오는동시에 객체에 접근을 하려하니 Undefined가 발생하는것이었다.

Ajax로 파일을 불러올때 async옵션을 Fasle로 주니 이상없이 객체 접근도 가능하고 아주 잘됨..

괜히 소스코드 몇자 줄여보자고 안쓰던거 썼다가 몇시간동안 뭔 개고생이여..

Posted by Z700zZz