본문 바로가기

JavaScript/Web Development

[JavaScript] rejected 상태에서 실행할 콜백

첫번째 then 메소드는 두개의 콜백을 가지고있음.

첫번째 콜백은 fulfilled 상태가 되면 실행할 콜백이고, 두번째 콜백은 rejected 상태가 되면 실행할 콜백임.

 

만약 promise 객체가 rejected 상태가 됐을 때 실행할 콜백을 설정하고 싶다면, then 메소드의 두번째 파라미터에 원하는 콜백을 넣어주면 됨. 

 

첫 번째 콜백 : promise 객체가 fulfilled, 작업 성공 결과를 가져옴

두 번째 콜백 : promise 객체가 rejected, 작업 실패 정보 가져옴

 

 

[작업 성공 : 첫번째 콜백]

 

fetch('https://jsonplaceholder.typicode.com/users')
    .then((response) => response.text(), (error) => { console.log(error); })
    .then((result) => { console.log(result); });

 

[작업 실패 (인터넷 연결 해제) : 두번째 콜백] 

 

인터넷이 끊겨 에러가 발생.

fetch 함수의 작업이 실패하고, fetch 함수가 return 한 promise 객체는 rejected 상태

두 번째 콜백함수로 설정한 TypeError 에러객체를 통해 작업 실패 정보 얻음.