Promise 이해하기

이아론·2024년 3월 11일

Promise란?

-> promise는 비동기를 처리하기위한 객체로 언젠가 완료될 작업을 나타냅니다.
완료되어 하나의 값을 반환하거나 실패해 거부이유를 반환할 수도 있습니다.

promise 객체는 대표적으로 3가지 상태를 가집니다.

  • Pending :
    작업중인 상태입니다.
    아직 작업이 끝나지 않아 약속에 대한 결과가 나오지 않은 상태입니다.
  • Fulfilled :
    비동기 처리가 성공적으로 완료되어 약속을 마친 상태입니다.
    약속에 대한 결과로 하나의 값이 반환됩니다.
  • Rejected :
    비동기 처리가 실패한 상태입니다.
    약속이 거부되고 거절된 이유를 반환합니다.

promise 객체는 두가지의 메소드를 가집니다.

  • then :
    약속이 완료된 이후 호출될 함수들을 정의합니다.
    첫번째 인자로 전달되는 함수는 약속이 성공했을때 호출되고, 두번째 인자로 전달되는 함수는 거부됬을 때 호출됩니다.

  • catch : 약속이 거부됬을 때 호출될 함수를 등록합니다.

이렇게 promise객체를 통해 비동기통신이 성공했는지 안했는지 확인하고, 결과에 맞는 함수를 실행할 수 있습니다. promise객체에 대해 모르는 사람이라면 유용하게 읽고 가셨으면 좋겠습니다.

0개의 댓글