Ρίχνοντας τους δικούς σας τύπους εξαιρέσεων στο JavaScript
Ο αριθμός των ενσωματωμένων εξαιρέσεων στο JavaScript δεν είναι τόσο μεγάλος και τις περισσότερες φορές δεν μπορούν να ικανοποιήσουν όλες τις ανάγκες μας σε διαφορετικούς τύπους εξαιρέσεων. Γι' αυτό, η JavaScript έχει ενσωματωμένη τη δυνατότητα δημιουργίας εξαιρέσεων με τον δικό τους τύπο.
Υπάρχουν διαφορετικοί τρόποι για να γίνει αυτό. Ο πιο
απλός - να περάσουμε στο throw ένα αντικείμενο
με κλειδιά name και message:
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.
Νωρίτερα, φτιάξατε μια συνάρτηση που ρίχνει εξαίρεση όταν προσπαθούμε να πάρουμε την τετραγωνική ρίζα από αρνητικό αριθμό. Μετατρέψτε τη συνάρτησή σας έτσι ώστε να ρίχνει μια εξαίρεση με έναν τύπο που εφηύρατε εσείς. Σκεφτείτε καλά το όνομα της εξαίρεσης, ώστε αυτό το όνομα να είναι κατάλληλο.