[React 숙련] 비동기 프로그래밍 입문 (promise 객체 / async,await)

728x90
반응형

1. 비동기 프로그래밍이란?

▶ 동기: 현재 실행중인 코드가 끝나야 다음코드 실행

▶ 비동기 : setTimeout, addEventListener // 요청,실행대기, 보류 등 코드 , 서버통신과 관련 로직이 대표적

(ex. 짜장면 배달: 배달 후 할일 후에 짜장면 그릇 가져감)

▶ 콜백지옥 : 비동기 시, 일어날 수 있는 문제 => 가독성+수정이 어려움 => (ES6) promise 객체가 나옴!

 

2. promise 객체의 handling 방법 (예외처리)

▶ promise 객체 

(1) 대기 : pending / 요청하고난 직 후 상태 --> 초초 그 잡채

(2) 이행 : fulfilled   / 성공적으로 전달한 상태

(3) 거부 : rejected  / 이유는 모르겠지만 거절당함  

 

handling 방법 (1) : then~catch (ES6)

- patch로 데이터 가져올때

: ~~

.then(response =>{ '콜백함수가 들어오는데 인자값은 response '} )

.catch(error =>{오류})

 

 handling 방법 (2) : asnyc / await (ES7)

asnyc() =>{ /*asnyc() : 비동기함수구나*/

try{

// const response = await ~~~~ (이 줄이 끝날때까지 기다리기)

// console.log(aaa) ; //위에 코드가 끝나여 발생함

}

catch {

//오류

}

 

3. promise 객체와 같이 비동기 프로그래밍이 필요성

▶ 코드는 일의 순서가 중요!
▶ 데이터가 안들어왔는데 동기코드가 먼저 실행되면 안 되기 때문에!

 

 

끝.

 

반응형