Comme Java Language, JavaScript peut lancer des exceptions via des instructions de lancer. Contrairement à la langue java, JavaScript peut lancer tous les types de valeurs à travers des instructions de lancer, pas seulement pour lancer des objets d'erreur.
La copie de code est la suivante:
// lance un objet d'erreur.
essayer{
lancer une nouvelle erreur ("Message dans l'objet d'erreur");
} catch (e) {
console.log (e); // erreur: message dans l'objet d'erreur
}
essayer{
lancer "message brut";
} catch (message) {
console.log (message); // message brut
console.log (message typeof); // chaîne
}
essayer{
lancer 42;
} catch (code) {
console.log (code); // 42
console.log (type de code); // numéro
}
Comme Java Language, si l'exception n'est capturée par aucune déclaration de capture, l'exception sera finalement jetée à l'utilisateur:
La copie de code est la suivante:
essayer{
// Jetez une nouvelle erreur ("Erreur de test"); // l'erreur sera lancée. Erreur: Erreur de test
} enfin{
}
essayer{
Lancer 42; // une erreur sera lancée. Erreur: 42
} enfin{
}
Pour les exceptions de lancer de capture, JavaScript utilise également des instructions Try / Catch / Enfin. Les règles d'utilisation sont les suivantes: l'essai est requise, les captures et enfin sont des déclarations facultatives, mais au moins une des prises et finalement doit apparaître.
Dans l'instruction Catch, un paramètre E (ou tout autre nom de variable juridique) peut être défini pour stocker les valeurs aberrantes jetées. À l'intérieur de l'instruction Catch, ce paramètre peut être utilisé comme variable locale. Contrairement à une autre utilisation de la variable dans JavaScript, les variables de paramètres dans les instructions Catch ne sont valides que dans l'instruction Catch (la portée de cette variable est limitée à l'instruction Catch).
Pour enfin les instructions, le code en est finalement exécuté, qu'il y ait une exception lancée dans l'essai. Les détails comprennent:
1. Aucune exception ne se produit dans Try. Lorsque l'instruction TRY est exécutée, le code en est finalement exécuté.
2. Aucune exception ne se produit dans TRY, mais lorsque le code d'essai est sorti en raison de l'exécution des instructions Break, Continuer ou Return, le code de sera finalement exécuté.
3. Une exception se produit dans Try. Une fois l'exception traitée par l'instruction Catch, le code en est enfin exécuté.
4. Une exception se produit dans TRY, mais lorsque l'exception doit être poursuivie pour être jetée en raison de l'absence d'une instruction CATCH, le code en final sera exécuté. Il convient de noter que dans le cas où l'instruction Catch est manquante, JavaScript exécutera finalement le code, puis continuera à lancer une exception vers le haut.
Dans le code enfin, si les instructions de cassure, de poursuite ou de retour apparaissent, JavaScript exécutera directement ces instructions et ignorera les instructions Break, Continuer ou Retour qui peuvent exister dans le code d'essai; Même si l'instruction Catch est manquante, ce qui donne une exception qui doit être signalée, JS rejetera les informations de rapport d'exception et continuera d'exécuter les instructions de pause, de poursuite ou de retour dans le code enfin. De même, si une exception est lancée dans le code enfin, JavaScript jettera toutes les instructions de rupture, de continuer ou de renvoyer dans le code d'essai, et également éliminer le comportement de rapport d'exception possible, et ne lancez que des exceptions dans le code final.