Les exemples de cet article résument les méthodes de gestion des exceptions dans la programmation JavaScript. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Avant-propos : dans l'article précédent "Résumé des méthodes courantes de capture des exceptions publiques dans le développement asp.net", nous avons résumé la gestion des exceptions sur le serveur asp.net. Cet article fait suite à l'article précédent et résume et discute brièvement de la gestion des exceptions JavaScript côté client. De cette façon, nous avons une compréhension préliminaire de la gestion des exceptions asp.net côté serveur et côté client.
1. Erreurs de script ennuyeuses
Lou Zhu joue souvent à 13, mais généralement il n'y a pas de profondeur. Parfois, j'avais du mal à comprendre un passage en anglais, et finalement je pouvais à nouveau faire semblant en profondeur :
Lorsque nous parcourons des pages Web sur Internet, nous avons tous vu une boîte d'alerte JavaScript nous indiquant qu'il y avait une erreur d'exécution et demandant "Voulez-vous déboguer ?". Un message d'erreur comme celui-ci peut être utile pour les développeurs mais pas pour les utilisateurs. . Lorsque les utilisateurs voient des erreurs, ils quittent souvent la page Web.
Hé, tu ne comprends pas le paragraphe ci-dessus ? Pour le dire de manière élégante et crue, nclouzhu comprend que lors de l'ouverture d'une page Web, nous avons tous rencontré des problèmes SB tels qu'une erreur de script apparaissant sur la page Web et demandant « Voulez-vous déboguer de temps en temps ? » N'est-ce pas ennuyeux ? Les utilisateurs normaux sélectionnent souvent la croix rouge dans le coin supérieur droit, mais ce type d'information rapide peut être très utile aux développeurs. On voit que, je kao, les développeurs ne sont pas normaux ? ! Il semble que Lou Zhu ait mal compris. En fait, il n'est pas difficile de voir que l'intention ultime du texte original devrait être de nous dire que les erreurs de script dans les pages Web sont très graves et que l'expérience utilisateur n'est pas bonne, ce qui « fera fuir » un groupe d'utilisateurs potentiels. en vain.
2. Comment gérer les erreurs de script
En js, nous captons et gérons généralement les exceptions via try...catch.
try { //Run some code here } catch(e) { //Handle errors here }
Dans le code réel, on pourrait écrire :
function test(){ var txt=""; try{ alert(aaa);//aaa是未声明的变量 } catch(e){ txt="There was an error on this page.\n\n"; txt+="Error message: " + e.message + "\n\n"; txt+="Error description: " + e.description + "\n\n"; txt+="Error name: " + e.name + "\n\n"; //alert(txt);//正式平台上可能需要注释掉该行 } }
Une autre approche courante consiste à enregistrer une méthode de traitement générale pour l'événement d'erreur de l'objet fenêtre et à placer le code suivant dans la section
window.onerror=function(){ return true; }
3. Erreur dans javascript
(1), Attributs communs de l'objet Erreur
Lorsque nous captons une exception, nous lançons généralement une instance e de l'objet Error au niveau de la capture. Plusieurs propriétés courantes de e sont les suivantes :
Description de l'attribut
description Informations de description de l'exception
message Les informations de description anormales
nom Type d'exception
numéro Code d'exception unique
(2), Type d'objet Erreur
Nous pouvons vérifier le type d'exception via l'attribut name dans (1). En js, il existe plusieurs types d'exceptions courants comme suit :
TypeError : déclenché lorsqu'un type inattendu est rencontré, tel que des variables non déclarées
SyntaxError : Déclenché par des erreurs de syntaxe lors de l'analyse du code js, telles que des scripts d'enregistrement côté serveur, des crochets ou des guillemets manquants, etc. ;
ReferenceError : Cette exception est levée lorsqu'une référence non valide est utilisée
;
EvalError : déclenché lorsque la fonction eval est appelée de manière incorrecte
;
RangeError : déclenché lorsque la valeur d'une variable numérique dépasse sa plage
URIError : déclenché lorsque la fonction encodeURI() ou decodeURI() est utilisée de manière incorrecte.
Dans le développement réel, une gestion différente des exceptions pour différents types d'exceptions nous aidera à découvrir efficacement les problèmes et à améliorer l'expérience utilisateur.
J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.