Maison > interface Web > js tutoriel > le corps du texte

Une brève discussion sur la gestion des exceptions JavaScript skills_javascript skills

WBOY
Libérer: 2016-05-16 15:52:26
original
1460 Les gens l'ont consulté

Des erreurs se produiront inévitablement pendant l'exécution du programme, et les résultats d'exécution après les erreurs sont souvent incorrects. Par conséquent, les programmes qui font des erreurs pendant l'exécution sont généralement terminés de force. Les erreurs d'exécution sont collectivement appelées exceptions. Afin de pouvoir gérer les erreurs lorsqu'elles se produisent, JavaScript fournit des instructions de gestion des exceptions. Contient try-catch, try-catch-finally et throw.

déclaration try-catch

try{
tryStatements
}
catch(exception){
catchStatements
}
Copier après la connexion

Description du paramètre :
tryStatements : obligatoire. Séquence d'instructions dans laquelle une erreur peut se produire.
exception : obligatoire. Tout nom de variable utilisé pour référencer l'objet d'erreur lorsque l'erreur s'est produite.
catchStatements : facultatif. Instruction de gestion des erreurs, utilisée pour gérer les erreurs qui se produisent dans les tryStatements.
Lors du codage, l'instruction dans laquelle une erreur peut se produire est généralement écrite entre les accolades du bloc try, et l'erreur est gérée dans le bloc catch suivant. Les informations d'erreur sont contenues dans un objet d'erreur (objet Erreur), accessible via la référence d'exception. Déterminez comment gérer en fonction des informations d’erreur contenues dans l’objet d’erreur.

<script type="text/javascript">
try{
var n = error; //人为引发一个错误,error未定义就使用
}
catch(e){
alert((e.number&0xFFFF) + "号错误:" + e.description); //错误处理:仅输出错误信息
}
</script>
Copier après la connexion

Cet extrait de code utilise une structure try-catch pour gérer les erreurs d'exécution du programme, et la ligne 4 génère artificiellement une erreur. Le bloc catch des lignes 6 à 9 détecte les erreurs et les gère.
Astuce : les erreurs JavaScript sont des erreurs d'exécution et les erreurs de syntaxe sont détectées lors de la phase de compilation ; les erreurs d'exécution sont détectées lors du processus en cours.

déclaration essayer-attraper-finalement

try{
tryStatements;
}
catch( exception ){
handleStatements;
}
finally{
fianllyStatements;
}
Copier après la connexion

Description du paramètre :
tryStatements : obligatoires, instructions pouvant provoquer des exceptions.
handleStatements : facultatif, instruction de gestion des exceptions.
fianllyStatements : facultatif, instructions exécutées sans condition après l'exécution d'autres procédures.
Même si aucune erreur ne se produit, les instructions du bloc final seront exécutées à la fin et le code de nettoyage des ressources est généralement placé ici.
Une exception est artificiellement levée lors du parcours d'un tableau avec des noms Apple.

<script type="text/javascript">
try{
var fruit = new Array("鸭梨","苹果","葡萄","李子");

for( n=0;n<fruit.length;m++)
{
document.write(fruit[n] + "");
}
}
catch( e )
{
alert( (e.number&0xFFFF) + "号错误:" + e.description );
}
finally{
fruit = null;
alert("fruit="+fruit+"已经断开fruit数组的引用!");
}
</script>

Copier après la connexion

La ligne 5 de cet extrait de code utilise une variable m non définie, déclenchant artificiellement une exception. Les lignes 11 à 13 interceptent les exceptions et les gèrent. Le bloc final des lignes 14 à 18 nettoie les ressources. Cette instruction est exécutée sans condition pour garantir que les ressources occupées par le tableau de fruits ne sont pas divulguées.

déclaration de lancer

Plusieurs instructions de gestion des exceptions peuvent être imbriquées. Lorsque plusieurs structures sont imbriquées, l'instruction try-catch dans la couche interne peut la lancer si elle n'a pas l'intention de gérer l'exception elle-même. L'instruction try-catch parent peut recevoir des exceptions levées par l'enfant, et l'opération de lancement utilise l'instruction throw.
lancer une expression ;
La valeur de l'expression est transmise sous forme d'objet de message d'erreur, qui sera capturé par l'instruction catch. L'instruction throw peut être utilisée partout où une exception est destinée à être levée.
Normalement, 0 ne peut pas être utilisé comme diviseur, vous pouvez donc définir une exception et la lancer si le diviseur est 0.

<script>
try{
var dividend = 100; //被除数
var parts = 0; //除数
if( parts == 0){ //如果除数为0则抛出异常
throw "Error:parts is zero"; //抛出异常
}
alert("每人" + dividend/parts + "份"); //输出提示信息
}
catch(e){ //此处将捕获try块中抛出的异常
alert(e); //用对话框输出错误对象的信息
}
</script>
Copier après la connexion

Ce qui précède représente l’intégralité du contenu de cet article, j’espère que vous l’aimerez tous.

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!