Promise: janji hasil di masa depan

Promise adalah object yang mewakili hasil yang belum ada. Ia punya tiga keadaan: pending, fulfilled (berhasil), rejected (gagal). .then() menangani keberhasilan, .catch() menangani kegagalan. Hampir semua API modern mengembalikan Promise.

👀 Contoh dulu

const janji = new Promise((resolve, reject) => {
  const berhasil = true;
  setTimeout(() => {
    if (berhasil) resolve('Data diterima');
    else reject(new Error('Koneksi gagal'));
  }, 400);
});

janji
  .then((hasil) => console.log('OK: ' + hasil))
  .catch((err) => console.log('Gagal: ' + err.message));

Hasilnya: OK: Data diterima

💡 resolve = berhasil (masuk .then), reject = gagal (masuk .catch). Satu Promise hanya selesai sekali.

📝 Sekarang giliranmu

Buat Promise yang resolve('Sukses') setelah 500 ms, lalu tangani dengan .then() untuk menampilkan hasilnya.

Preview