JavaScript Dasar | #8 Error Handling

 



Error Handling

Pengenalan Error

Error (kesalahan) dalam JavaScript dapat terjadi ketika kode dieksekusi dan sesuatu tidak berjalan sesuai harapan. Kesalahan ini dapat disebabkan oleh berbagai faktor seperti kesalahan sintaksis, kesalahan logika, atau kegagalan saat mengambil data eksternal.

JavaScript menyediakan mekanisme untuk menangani error melalui struktur try, catch, dan finally, yang memungkinkan Anda untuk mengelola error dengan cara yang lebih teratur tanpa menyebabkan aplikasi crash.

Try, Catch, Finally

Blok try, catch, dan finally adalah cara yang paling umum untuk menangani error di JavaScript. Blok try digunakan untuk mengeksekusi kode yang mungkin menghasilkan error, catch menangkap dan menangani error yang terjadi, dan finally menjalankan kode yang akan dieksekusi terlepas dari apakah ada error atau tidak.

Struktur Dasar:


try {
  // Kode yang mungkin menghasilkan error
} catch (error) {
  // Kode untuk menangani error
} finally {
  // Kode yang akan dijalankan setelah try/catch, selalu dieksekusi
}

Penjelasan:

  • try: Blok ini berisi kode yang mungkin menyebabkan error.
  • catch: Jika error terjadi di dalam blok try, blok ini akan menangkapnya. Parameter error memberikan informasi tentang error tersebut.
  • finally: Blok ini bersifat opsional dan akan selalu dieksekusi setelah try dan catch, baik terjadi error atau tidak.

Contoh Penggunaan:


try {
  let result = 10 / 0;
  console.log(result);
} catch (error) {
  console.log('Terjadi kesalahan:', error.message);
} finally {
  console.log('Blok finally selalu dieksekusi');
}

Dalam contoh di atas, meskipun terjadi operasi yang tidak lazim (pembagian dengan 0), tidak ada error yang menyebabkan aplikasi crash karena blok catch akan menangkapnya dan menampilkan pesan kesalahan.

Throwing Errors

Kita juga bisa secara manual melempar error menggunakan pernyataan throw. Ini sangat berguna ketika Anda ingin memvalidasi input atau memaksa error terjadi pada kondisi tertentu.

Struktur Dasar:


throw new Error('Pesan error yang ingin ditampilkan');

Contoh Penggunaan:


function bagi(a, b) {
  if (b === 0) {
    throw new Error('Tidak dapat membagi dengan nol');
  }
  return a / b;
}

try {
  let hasil = bagi(10, 0);
  console.log(hasil);
} catch (error) {
  console.log('Error:', error.message);
}

Pada contoh di atas, kita memaksa error terjadi ketika user mencoba membagi angka dengan nol. Fungsi bagi() akan memeriksa apakah pembaginya adalah nol, dan jika iya, error akan dilempar menggunakan throw. Blok try...catch menangkap error tersebut dan mencegah program crash.

Kesimpulan

Dengan menggunakan try, catch, finally, dan throw, kita dapat menangani error di JavaScript dengan lebih baik dan membuat aplikasi lebih robust. Penggunaan yang tepat dari error handling ini dapat membantu dalam debugging dan memastikan bahwa aplikasi tetap berjalan meskipun ada masalah yang muncul.

Komentar