Promise   프라미스 객체

(2020-11-19)

프로미스, 프라미스

1. Promise 객체

  ㅇ `비동기 작업`과 `그 작업 완료 결과에 따라 해야 할 일`을 캡슐화일급 객체

  ㅇ 장래에 일어난 결과에 따라, 선택적으로 어떤 함수를 실행할 것을 약속 함
     - 작업 완료 시 그 결과(success,fail)에 따라,
     - 이에 대응하는 콜백함수(promise 객체 내에 캡술화됨)를 호출하게 함

  ㅇ [참고용어] 
     - 일급객체 : 함수의 입력(매개변수),출력(리턴값)에 쓰일 수 있는 객체
     - 콜백함수 : 다른 함수인수로써 넘겨질 수 있는 함수


2. Promise 객체의 생성 및 진행과정

  ㅇ promise 생성자 문법 예시
      
const promise = new Promise( (resolve, reject) => {
    if (success) resolve(value);    // 비동기 작업 성공시, 수행되는 콜백함수
    else reject(error);             // 비동기 작업 실패시, 수행되는 콜백함수
});
ㅇ promise 과정 - 비동기 동작의 요청/호출 (aync call) - 미리 정의된 promise 객체가 생성됨 (promise object created) - 대기 (pending,unsettled) ☞ 아래 4.항 참조 - 결과 (outcome) : 결과(resolve:성공,reject:실패)에 대한 리턴값(value,error) 전달 - 결과 처리 (method) ㅇ promise 결과 및 처리 - 비동기 작업 요청시 생성된 promise 객체는, . 작업 결과(resolve:성공,reject:실패)에 따라, 각각 그에맞는 리턴 값을 전달 함 - 결과 처리 . promise 객체의 결과 처리를 위한 메소드로써, then() 및 catch()가 있음 3. Promise 객체메소드 ㅇ then 메소드 - promise.then(success, fail) . promise : 생성된 promise 객체 . success : 성공 콜백함수 (promise 객체 내 resolve에 의해 호출됨) . fail : 실패 콜백함수 (promise 객체 내 reject에 의해 호출됨) ㅇ catch 메소드 - promise.catch(fail) . promise : 생성된 promise 객체 . fail : 실패 콜백함수 (promise 객체 내 reject에 의해 호출됨) 4. Promise 객체의 진행 상태 구분 ㅇ 대기중 (Pending) ㅇ 이행됨 (Fulfilled) ㅇ 거부됨 (Rejected)


[JS 객체] 1. JS 객체 2. JS 객체 구분 3. JS 객체의 생성 저장 접근 4. JS 클래스 5. 프로토타입 객체 6. 프라미스 객체 7. 일급 객체 8. 래퍼 객체 9. 콘솔 객체 10. this 참조 11. 이터레이터,제너레이터 12. 범용 객체

 
        최근수정     요약목록     참고문헌