การโยนประเภทข้อยกเว้นของตัวเองใน JavaScript
จำนวนข้อยกเว้นที่มีอยู่แล้วใน JavaScript นั้นไม่มากนัก และส่วนใหญ่แล้วไม่สามารถ ตอบสนองความต้องการทั้งหมดของเราใน ประเภทข้อยกเว้นที่แตกต่างกันได้ ดังนั้นใน JavaScript จึงมีฟีเจอร์ ในการสร้างข้อยกเว้นด้วยประเภทของตัวเอง
มีวิธีต่างๆ ในการทำเช่นนี้ วิธีที่ง่ายที่สุด
คือส่งอ็อบเจ็กต์ที่มีคีย์ name และ
message ไปใน throw:
try {
throw {name: 'MyError', message: 'ข้อความข้อยกเว้น'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'ข้อความข้อยกเว้น'
}
ก่อนหน้านี้เราได้สร้างฟังก์ชันที่โยน ข้อยกเว้นเมื่อหารด้วยศูนย์:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('ข้อผิดพลาดในการหารด้วยศูนย์');
}
}
ปรับเปลี่ยนฟังก์ชันนี้เพื่อให้มันโยน
ข้อยกเว้นด้วยประเภทที่เราคิดขึ้นมา
เช่น DivisionByZeroError
ก่อนหน้านี้คุณได้สร้างฟังก์ชันที่โยนข้อยกเว้น เมื่อพยายามหารากที่สองของจำนวนลบ ปรับเปลี่ยนฟังก์ชันของคุณเพื่อให้ มันโยนข้อยกเว้นด้วยประเภทที่คุณคิดขึ้น คิดให้ดีเกี่ยวกับชื่อของข้อยกเว้น เพื่อให้ชื่อนั้นเหมาะสม