상세 컨텐츠

본문 제목

JavaScript :: Promise

JavaScript

by 비오스터딩 2020. 10. 13. 20:45

본문

  Promise  

비동기 처리에 사용되는 객체.

비동기를 처리할 때 사용.

 

Promise는

pending(new Promise()메서드 호출),

fulfilled(resolve 호출),

rejected(reject 호출)의 3가지 상태를 가진다.

 

**주의** Promise를 만들엇을 때, executor(resolve나 reject)는 바로 실행된다. 

 new Promise (resolve, reject){ ... } 

resolve와 reject를 인자로 가짐.

 

promise의 사용

promise                       

.then( resolve의 콜백함수(value == resolve의 반환값) )

.catch( reject의 콜백함수(error == reject의 반환값) )

.final( fn{resolve와 reject에 상관없이 마지막에 실행될 코드}\ );

 

 

예제를 통해 살펴보자.

 

ex1.

 

만약 resolve가 활성화되어 있다면 console에는 'ellie'와 'finally'만 출력.

 

 

ex2.

getHen( )   //🐓

  .then( getEgg )   //🐓 => 🥚

  .then( cook )      //🐓 => 🥚 => 🍳

결과값(consol)

함수의 인자값이 같은 경우 다음과 같이 인자는 생략가능.

 

 

Error Handling(에러 처리)

getHen( )   //🐓

  .then( getEgg )   //error! 🐓 => 🥚

  .catch( error => '🥖'; )    //🥖;

  .then( cook )      //🥖 => 🍳

console.log

 

반응형

관련글 더보기

댓글 영역