본문 바로가기

Front-end/JavaScript2

비동기 처리(Promise 객체) 저번시간에 배웠던 콜백 함수! 권장하지 않는 방법이다. 요새 많은 사람들이 사용하는 Promise 에 대해서 공부해 보자! 왜 Promise가 필요한가? ajax가 서버에다 데이터 하나만 주세요 라는 요청을 보낸다. 그런데 데이터를 받아오기도 전에 마치 데이터를 다 받아온 것 처럼 화면에 데이터를 표시하려고 하면 오류가 발생하거나 빈 화면이 뜬다. 이러한 문제점을 해결하기 위한 방법중 하나가 프로미스이다!! 간단한 예를 통해서 설명을 해보겠습니다. function getData(callbackFunc) { $.get('url 주소/products/1', function (response) { callbackFunc(response); // 서버에서 받은 데이터 response를 callbackFunc().. 2019. 12. 18.
비동기 처리(Callback hell) 비동기 처리? function getData() { var tableData; $.get('URL', function(response) { tableData = response; }); return tableData; } console.log(getData()); 위 코드의 정답은 무엇인가? 바로 대답한다면 비동기 처리를 좀 아시는 분이군요~ 정답은 return 으로 undefined가 출력이 된다는 것이다 즉 비동기 처리를 하면 특정 코드의 연산이 끝날 때까지 코드의 실행을 멈추지 않고 다음 코드를 먼저 실행하는 특성을 가진다!!! 그렇기 때문에 데이터를 아직 가져오지 못했는데 리턴 해버려서 undifined가 출력 되는 것이다!! 나 또한 웹프로젝트를 하면서 어떨때는 return값이 잘 가지고 오다가.. 2019. 12. 17.