Lanjutan & AsyncKamis, 22 Januari 2026

Async / Await

Kode asinkron yang modern dan bersih.

Iklan

Dukung JS Fruggal dengan melihat sponsor kami.

Async/Await adalah gula sintaksis (syntactic sugar) di atas Promises. Ini membuat kode asinkron terlihat sinkron, yang lebih mudah diikuti oleh otak manusia.

Polanya

Perhatikan kita membungkus semuanya dalam try/catch. Ini wajib dalam kode profesional. Tanpanya, jika permintaan gagal, aplikasi Anda bisa crash diam-diam.

// Panggilan API Tiruan
const ambilPengguna = () => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      // Simulasikan tingkat kegagalan 50%
      Math.random() > 0.5 
        ? resolve({ id: 1, nama: "Alice" }) 
        : reject(new Error("Kesalahan Jaringan"));
    }, 1000);
  });
};

async function muatProfil() {
  console.log("Memuat...");
  
  try {
    // Kode berhenti di sini sampai janji diselesaikan
    const pengguna = await ambilPengguna();
    console.log("Pengguna dimuat:", pengguna.nama);
  } catch (error) {
    // Jika janji ditolak, kita lompat ke sini
    console.error("Gagal:", error.message);
  } finally {
    console.log("Sembunyikan spinner pemuatan.");
  }
}

muatProfil();

Kesalahan Umum: Air Terjun Berurutan

Jangan await hal-hal satu per satu jika mereka tidak bergantung satu sama lain.
Buruk: await getUser(); await getPosts(); (Menunggu dua kali).
Bagus: await Promise.all([getUser(), getPosts()]); (Berjalan bersamaan).

Iklan

Dukung JS Fruggal dengan melihat sponsor kami.