Menangkap Pengecualian dalam JavaScript
Untuk menangkap pengecualian, konstruksi
try-catch digunakan. Ia mempunyai
sintaks berikut:
try {
// kod
} catch (error) {
// pemprosesan ralat
}
Blok try hendaklah mengandungi kod
yang mungkin mempunyai pengecualian. Jika
situasi pengecualian berlaku semasa
menjalankan kod ini, skrip kita tidak akan
terhenti dengan ralat di konsol, tetapi kod
dalam blok catch akan mula dilaksanakan.
Dalam blok ini, kita harus bertindak balas
terhadap ralat dengan cara yang sesuai. Sebagai contoh,
jika kita ingin menghantar beberapa data
melalui internet dan internet tidak berfungsi,
dalam blok catch kita boleh mengatasi
keadaan tersebut: kita boleh, sebagai contoh, memaparkan mesej
kepada pengguna, atau kita boleh cuba menghantar
data sekali lagi selepas beberapa ketika - sekiranya
internet sudah berfungsi.
Jika tiada situasi pengecualian berlaku semasa
menjalankan blok try, maka
kod berguna hanya akan dilaksanakan, dan kod dari
blok catch - tidak akan dilaksanakan.
Sebagai contoh, mari kita cuba menghuraikan JSON dan jika ia tidak betul, paparkan mesej tentangnya:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('tidak dapat melaksanakan operasi penghuraian JSON');
}
Diberi kod yang menulis beberapa rentetan ke dalam storan tempatan:
let str = 'beberapa rentetan';
localStorage.setItem('key', str);
Bungkus kod ini dalam konstruksi try-catch.
Dalam blok catch, paparkan mesej tentang
storan penuh. Semak kerja
kod anda untuk rentetan bersaiz kurang daripada 5
MB dan untuk rentetan yang lebih besar.
Diberi JSON, di dalamnya disimpan array.
Jika JSON ini betul, maka paparkan elemen
array dalam bentuk senarai ul. Jika
JSON tidak betul, paparkan mesej
bahawa ralat telah berlaku pada halaman.