web
노드 - Promise
tpghks9245
2022. 4. 21. 20:46
프로미스
자바스크립트 비동기 처리에 사용되는 객체.
- 서버에서 받아온 데이터를 화면에 표시할 때 주로 사용한다.
프로미스의 상태
new Promise() - 프로미스를 생성
이후 3가지의 상태를 가짐.
pending(대기) - 비동기 처리 로직이 아직 완료되지 않음.
fulfilled(이행) - 비동기 처리 완료. 결과 값이 반환됨.
rejected(실패) - 비동기 처리중 오류가 발생하거나 실패한 상태.
new Promise();
해당 메서드를 호출하면 대기 상태로 전환됨.
해당 메서드를 호출할 때 콜백함수를 선언할 수 있다.
ex)
new Promise(function(resolve, reject) {
});
--------
new Promise(function(resolve, reject) {
resolve();
});
콜백 함수의 인자인 resolve를 실행하면 fulfilled(이행) 상태로 전환된다.
이행상태가 되면 then()을 이용하여 처리결과 값을 받을 수 있다.
--------
new Promise(function(resolve, reject) {
rejected();
});
해당 메서드를 호출하면 실패상태가 된다.
실패상태가 되면 실패한 이유와 결과값을 catch()로 받을 수 있음.