Skip to content

Latest commit

 

History

History
49 lines (37 loc) · 2.07 KB

try...-catch.md

File metadata and controls

49 lines (37 loc) · 2.07 KB
layout bab nomor halaman keterangan
editorial
12
68
Dalam pemrograman, kesalahan terjadi karena berbagai alasan, beberapa di antaranya disebabkan oleh kesalahan kode, beberapa karena input yang salah, dan hal-hal lain yang tidak dapat diprediksi. `try catch` membantu mencegah skrip keseluruhan berhenti atau crash saat terjadi kesalahan, memungkinkan kita untuk dengan baik menangani kasus-kasus yang luar biasa dan memberikan perilaku pengganti.

Bab 12

Penanganan Kesalahan

Dalam pemrograman, kesalahan terjadi karena berbagai alasan, beberapa di antaranya disebabkan oleh kesalahan kode, beberapa disebabkan oleh input yang salah, dan hal-hal lain yang tidak dapat diprediksi. Ketika terjadi kesalahan, kode akan berhenti dan menghasilkan pesan kesalahan biasanya terlihat di konsol.

try... catch

Daripada menghentikan eksekusi kode, kita dapat menggunakan konstruksi try...catch yang memungkinkan penanganan kesalahan tanpa menghentikan skrip. Konstruksi try...catch terdiri dari dua blok utama: try dan kemudian catch.

try {
  // code...
} catch (err) {
  // error handling
}

Pertama, kode dalam blok try dieksekusi. Jika tidak ada kesalahan yang terjadi, maka blok catch dilewati. Namun, jika terjadi kesalahan, eksekusi dalam blok try dihentikan, dan kendali program dipindahkan ke blok catch. Penyebab kesalahan ditangkap dalam variabel err.

try {
  // kode...
  alert("Selamat datang di Belajar JavaScript");
  asdk; // kesalahan asdk variable tidak didefinisikan
} catch (err) {
  console.log("Kesalahan telah terjadi");
}

{% hint style="warning" %} try...catch bekerja untuk kesalahan saat runtime, yang berarti kode harus dapat dijalankan dan bersifat sinkron. {% endhint %}

Untuk melempar kesalahan khusus, Anda dapat menggunakan pernyataan throw. Objek kesalahan yang dihasilkan oleh kesalahan memiliki dua properti utama.

  • name: nama kesalahan
  • message: detail tentang kesalahan

{% hint style="info" %} Jika kita tidak memerlukan pesan kesalahan, blok catch dapat diabaikan. {% endhint %}