try...catch...finally
Kita dapat menambahkan satu konstruksi lagi ke try...catch
yang disebut finally
, kode ini dieksekusi dalam semua situasi. Artinya, setelah try
ketika tidak ada kesalahan dan setelah catch
dalam kasus kesalahan. Berikut adalah sintaks untuk try...catch...finally
.
try {
// coba eksekusi kode
} catch (err) {
// tangani kesalahan
} finally {
// selalu dieksekusi
}
Menjalankan contoh kode dunia nyata.
try {
alert("try");
} catch (err) {
alert("catch");
} finally {
alert("finally");
}
Di contoh di atas, blok try
dieksekusi terlebih dahulu, yang kemudian diikuti oleh finally
karena tidak ada kesalahan.
Exercise
Correct!
function divideNumbers(pembilang, penyebut) {
try {
// pernyataan try untuk membagi pembilang dengan penyebut.
} catch (error) {
// mencetak pesan kesalahan
} finally {
// mencetak bahwa eksekusi telah selesai
}
// mengembalikan hasil
}
let jawaban = divideNumbers(10, 2);
function divideNumbers(pembilang, penyebut) { let hasil; try { hasil = pembilang / penyebut; } catch (error) { console.error(`Kesalahan: ${error}`); } finally { console.log('Fungsi telah selesai dieksekusi'); } return hasil; } let jawaban = divideNumbers(10, 2);
assert(jawaban == 5);