JavaScript Async #13: Promise: then(), catch(), finally()

1. Apa itu Promise?

Promise adalah object yang merepresentasikan hasil dari proses asynchronous. Promise memiliki tiga state: pending, fulfilled, dan rejected.

2. Contoh Promise

const janji = new Promise((resolve, reject) => {
  const sukses = true;

  if (sukses) {
    resolve("Berhasil");
  } else {
    reject("Gagal");
  }
});

3. then()

then() dijalankan saat Promise berhasil.

janji.then((result) => {
  console.log(result);
});

4. catch()

catch() dijalankan saat Promise gagal.

janji.catch((error) => {
  console.error(error);
});

5. finally()

finally() selalu dijalankan, baik Promise berhasil maupun gagal.

janji.finally(() => {
  console.log("Selesai diproses");
});

6. Chaining

janji
  .then((result) => console.log(result))
  .catch((error) => console.error(error))
  .finally(() => console.log("Done"));

7. Ringkasan

  • Promise mempermudah async code dibanding callback
  • then() untuk sukses
  • catch() untuk error
  • finally() untuk proses akhir

Di part berikutnya kita bahas async/await.


ariq fadhil

Im Ariq Tech, a Top Rated Fullstack Developer with 5+ years of experience, delivering high-quality solutions across 50+ projects.