JavaScript Async #16: Error Handling di Async/Await
1. Kenapa Error Handling Penting?
Dalam proses asynchronous, banyak hal bisa gagal, seperti koneksi internet, server error, atau response yang tidak valid. Karena itu, error handling sangat penting.
2. try...catch pada async/await
async function getData() {
try {
const response = await fetch("https://jsonplaceholder.typicode.com/posts");
const data = await response.json();
console.log(data);
} catch (error) {
console.error("Terjadi error:", error);
}
}
3. finally
Kita juga bisa menambahkan blok finally untuk menjalankan kode penutup.
async function loadData() {
try {
console.log("Loading...");
} catch (error) {
console.error(error);
} finally {
console.log("Selesai");
}
}
4. Validasi Response
Pada Fetch API, request yang gagal status HTTP-nya belum tentu langsung masuk catch. Karena itu, sering kali kita perlu mengecek response.ok.
async function getUsers() {
try {
const response = await fetch("/users");
if (!response.ok) {
throw new Error("Gagal mengambil data");
}
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error.message);
}
}
5. Ringkasan
- Gunakan
try...catchuntuk menangani error async/await finallyberguna untuk proses penutup- Cek
response.oksaat memakai Fetch API
Di part berikutnya kita membahas concurrency dengan Promise.all, allSettled, dan race.

