Promise.finally() 메서드를 이용한 성공, 실패 상관없이 항상 실행되는 코드 작성
// Promise 객체 생성
const myPromise = new Promise((resolve, reject) => {
  // 비동기 작업 수행
  const success = true;
  if (success) {
    resolve("작업이 성공적으로 완료되었습니다.");
  } else {
    reject("작업이 실패하였습니다.");
  }
});

// Promise 체인에 finally() 메서드 사용
myPromise
  .then((result) => {
    console.log(result);
    // 성공 시 추가로 수행할 작업
  })
  .catch((error) => {
    console.error(error);
    // 실패 시 추가로 수행할 작업
  })
  .finally(() => {
    console.log("항상 실행되는 코드");
    // 성공 또는 실패 여부와 상관없이 항상 수행할 작업
  });

위의 코드에서는 Promise 객체를 생성하고 비동기 작업을 시뮬레이션합니다. 작업이 성공적으로 완료되면 resolve를 호출하여 결과를 반환하고, 작업이 실패하면 reject를 호출하여 오류를 반환합니다.

Promise 체인에서는 then() 메서드를 사용하여 작업이 성공 했을 때의 처리 및 catch() 메서드를 사용하여 작업이 실패 했을 때의 처리를 수행합니다. 마지막으로 finally() 메서드를 사용하여 항상 실행되는 코드를 작성할 수 있습니다.

위의 예제에서는 finally() 메서드를 사용하여 항상 실행되는 메시지 “항상 실행되는 코드”를 출력합니다. 이 코드 블록은 성공 또는 실패 여부와 상관없이 항상 실행됩니다.

이렇게 Promise.finally() 메서드를 사용하면 작업의 성공 또는 실패 여부와 관계없이 항상 실행해야 하는 코드를 간편하게 작성할 수 있습니다.

#JavaScript #Promise #finally