Penanganan Exception di JavaScript
Untuk menangkap exception digunakan
konstruksi try-catch. Konstruksi ini memiliki
sintaksis berikut:
try {
// kode
} catch (error) {
// penanganan error
}
Dalam blok try, tempatkan kode
yang mungkin mengandung exception. Jika
tiba-tiba selama eksekusi kode ini terjadi
situasi exception, skrip kita tidak
akan jatuh dengan error di konsol, tetapi akan mulai mengeksekusi
kode blok catch.
Di blok ini, kita harus merespons error tersebut
dengan cara yang memadai. Misalnya,
jika kita ingin mengirim beberapa data
melalui internet dan internet tidak bekerja, di
blok catch kita dapat mengatasi
situasinya: kita bisa, misalnya, menampilkan pesan
kepada pengguna, atau bisa mencoba lagi setelah beberapa saat
untuk mengirim data - siapa tahu
internet sudah berfungsi.
Jika selama eksekusi blok try tidak terjadi
situasi exception apa pun, maka
kode yang berguna akan dieksekusi, sedangkan kode dari
blok catch tidak akan dieksekusi.
Sebagai contoh, mari kita coba parsing JSON dan jika JSON-nya tidak valid, tampilkan pesan tentang hal itu:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('tidak dapat melakukan operasi parsing JSON');
}
Diberikan kode yang menuliskan suatu string ke dalam local storage:
let str = 'suatu string';
localStorage.setItem('key', str);
Bungkus kode ini dalam konstruksi try-catch.
Di blok catch, tampilkan pesan tentang
kelebihan kapasitas storage. Periksa kerja
kode Anda untuk string berukuran kurang dari 5
MB dan untuk string yang berukuran lebih besar.
Diberikan JSON, di dalamnya disimpan sebuah array.
Jika JSON ini valid, maka tampilkan elemen-elemen
array tersebut dalam bentuk list ul. Jika
JSON tidak valid, tampilkan pesan
bahwa terjadi error pada halaman.