การดักจับข้อผิดพลาดในโค้ดซ้อนกันใน JavaScript
ลักษณะพิเศษและความสะดวกของการใช้ exceptions อยู่ที่ว่าสามารถดักจับพวกมันได้ที่ระดับความซ้อน ใดๆ ของโค้ด มาดูตัวอย่างกัน สมมติว่า เรามีฟังก์ชันที่บันทึกข้อมูลลงใน ที่เก็บข้อมูลภายในเครื่อง:
function save(str) {
localStorage.setItem('key', str);
}
อย่างที่คุณทราบแล้ว เมื่อที่เก็บข้อมูลเต็ม
เมธอด setItem จะ throw exception
อย่างไรก็ตาม ไม่จำเป็นต้องดักจับ exception นี้
ภายในฟังก์ชัน save สามารถ wrap
แต่ละการเรียกใช้ฟังก์ชันด้วย try ได้:
try {
save('ข้อความบางอย่าง');
} catch (error) {
alert('พื้นที่ในที่เก็บข้อมูลภายในเครื่องหมด!');
}
กำหนดฟังก์ชันที่แปลง JSON เป็นอาร์เรย์:
function getArr(json) {
return JSON.parse(json);
}
ในโค้ดต่อไปนี้จะได้รับอาร์เรย์จาก JSON:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
ให้ wrap การเรียกฟังก์ชันด้วยโครงสร้าง try-catch