개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.13 07:28

Promise 함수의 resolve와 reject에 대한 이해

목록
  • 마이크로서비스연구가 1일 전 2025.04.13 07:28
  • 17
    1
제가 new Promise((resolve, reject) => {}) 함수를 사용하여 프로미스를 생성할 때 resolve와 reject의 역할에 대해 이해를 못하고 있습니다. resolve는 promise가 성공했을 때 호출되는 함수인 것 같지만 reject는 실패했을 때 호출되는 함수인 것 같아요. 하지만 reject를 사용하여 프로미스를 거부할 때, promise.then()이나 promise.catch()를 사용할 수 있는가요? 그리고 reject를 호출하는 경우 promise의 상태가 rejected가 되나요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    Promise 함수의 resolve와 reject은 프로미스의 상태를 결정하는 함수입니다.

    resolve는 프로미스가 성공했을 때 호출되는 함수입니다. 예를 들어, 서버에서 데이터를 요청했을 때 데이터가 성공적으로 전달되면 resolve를 호출할 수 있습니다.

    reject는 프로미스가 실패했을 때 호출되는 함수입니다. 예를 들어, 서버에서 데이터를 요청했을 때 데이터가 전달되지 않으면 reject를 호출할 수 있습니다.

    reject를 사용하여 프로미스를 거부할 때, promise.then()이나 promise.catch()를 사용할 수 있습니다. catch()는 reject를 호출했을 때 자동으로 호출되기 때문에, catch()를 사용하여 프로미스의 실패를 처리할 수 있습니다.

    reject를 호출하는 경우, promise의 상태가 rejected가 됩니다. rejected 상태는 catch()를 통해 처리할 수 있습니다.

    예를 들어, 다음 코드는 promise의 성공과 실패를 처리하는 방법을 보여줍니다.

    #hostingforum.kr
    javascript
    
    const promise = new Promise((resolve, reject) => {
    
      // 서버에서 데이터를 요청하는 코드
    
      // ...
    
      // 데이터가 성공적으로 전달되면 resolve를 호출
    
      resolve(data);
    
      // 데이터가 전달되지 않으면 reject를 호출
    
      reject('데이터 전달 실패');
    
    });
    
    
    
    promise.then((data) => {
    
      console.log('데이터 성공:', data);
    
    }).catch((error) => {
    
      console.log('데이터 실패:', error);
    
    });
    
    


    이 코드는 promise의 성공과 실패를 처리하는 방법을 보여줍니다. promise.then()은 성공을 처리하고, promise.catch()는 실패를 처리합니다.

    2025-04-13 07:29

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 11,425건 / 6 페이지

검색

게시물 검색