Section2. 타이머 API 풀이

keepgoing·2023년 1월 18일

코드스테이츠

목록 보기
3/31
post-thumbnail

✅ Promise 실행 함수가 가지고 있는 두 개의 파라미터 resolvereject 는 각각 무엇을 의미하나요?

➡️ Promise 생성자 함수는 비동기 처리를 수행할 콜백 함수를 인수로 전달 받는다.

➡️ 이 콜백 함수는 resolve와 reject 함수를 인수로 전달 받는다.

➡️ Promise 생성자 함수가 인수로 전달 받은 콜백 함수 내부에서 비동기 처리 수행

➡️ 비동기 처리 성공 시 resolve , 실패 시 reject 반환


resolve, reject함수에는 전달인자를 넘길 수 있습니다. 이때 넘기는 전달인자는 어떻게 사용할 수 있나요?

resovle(”전달인자”) ⇒ then(”전달인자”)

reject(”전달인자”) ⇒ catch(”전달인자”)


✅  new Promise()를 통해 생성한 Promise 인스턴스에는 어떤 메서드가 존재하나요? 각각은 어떤 용도인가요?

  • Promise.prototype.catch() 프로미스에 거부 처리기 콜백을 추가하고, 콜백이 호출될 경우 그 반환값으로 이행하며 호출되지 않을 경우, 즉 이전 프로미스가 이행하는 경우 이행한 값을 그대로 사용해 이행하는 새로운 프로미스를 반환합니다.
  • Promise.prototype.then() 프로미스에 이행과 거부 처리기 콜백을 추가하고, 콜백이 호출될 경우 그 반환값으로 이행하며 호출되지 않을 경우(onFulfilledonRejected중 상태에 맞는 콜백이 함수가 아닐 경우) 처리된 값과 상태 그대로 처리되는 새로운 프로미스를 반환합니다.
  • Promise.prototype.finally() 프로미스의 이행과 거부 여부에 상관없이 처리될 경우 항상 호출되는 처리기 콜백을 추가하고, 이행한 값 그대로 이행하는 새로운 프로미스를 반환합니다.
  • Promise.prototype.then 메서드는 무엇을 리턴하나요? promise 객체
  • Promise.prototype.catch 메서드는 무엇을 리턴하나요? promise 객체 를 리턴하기 때문에 프로미스 체이닝 가능

✅ Promise의 세 가지 상태는 각각 무엇이며, 어떤 의미를 가지나요?

  • Pending(대기) : 비동기 처리 로직이 아직 완료되지 않은 상태

  • Fulfilled(이행) : 비동기 처리가 완료되어 프로미스가 결과 값을 반환해준 상태

  • Rejected(실패) : 비동기 처리가 실패하거나 오류가 발생한 상태

  • await 키워드 다음에 등장하는 함수 실행은 어떤 타입을 리턴할 경우에만 의미가 있나요? promise 객체

  • await 키워드를 사용할 경우, 어떤 값이 리턴되나요? promise 객체의 result 값


  • fetch().then() : promise 객체를 리턴한다.
  • await를 사용하면 : promise 객체의 result 값을 리턴한다.
profile
매일매일

0개의 댓글