Maison > interface Web > js tutoriel > Analyse des objets d'erreur JavaScript

Analyse des objets d'erreur JavaScript

不言
Libérer: 2018-07-05 17:48:57
original
2408 Les gens l'ont consulté

Cet article présente principalement l'analyse des objets d'erreur JavaScript, qui a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Explication détaillée des objets d'erreur JavaScript

1. Le concept

erreur fait référence à l'état d'exécution anormal du programme, appelé « exception » ou « erreur » dans d'autres langages de programmation. L'interpréteur crée et génère un objet Error pour chaque situation d'erreur, qui contient des informations de description de l'erreur.

ECMAScript définit six types d'erreurs. De plus, vous pouvez également utiliser le constructeur Error pour créer un objet Error personnalisé et lancer l'objet à l'aide de l'instruction throw.

Six types d'erreurs :

  • ReferenceError : lorsque l'objet est introuvable

  • TypeError : le mauvais type ou objet est utilisé lors de l'utilisation de la méthode de

  • RangeError : lors de l'utilisation de la méthode de l'objet intégré, le paramètre est hors plage

  • SyntaxError : La syntaxe est incorrecte

  • EvalError : Mauvaise utilisation d'Eval

  • URIError : Erreur URI

2. Gestion des erreurs

Un mécanisme qui garantit aucune interruption anormale même si une erreur survient dans le programme.

try{
    可能发生错误的代码
}catch(err){
    只有发生错误时才执行的代码
}finally{
    无论是否出错,肯定都要执行的代码
}
Copier après la connexion

Points d'utilisation :

  • Le code qui utilise le try Wrapping, même s'il n'y a pas d'erreur, est moins efficace que le code qui n'utilise pas le Try Wrapping < ; 🎜>

  • Dans try, contient le moins de code possible qui pourrait mal tourner

  • Les erreurs du mauvais type ne peuvent pas être prédites à l'avance et doivent être capturé avec try catch;

  • peut finalement être omis

3. le définisseur de la fonction doit informer l'appelant d'utiliser les erreurs dans le processus ;

Comment : lancer une nouvelle erreur ("prompt text");

Exemples d'exercices

// 程序猿甲:定义函数的人
function round(num, d){
    if(!isNaN(num) && !isNaN(d)){
        num *= Math.pow(10, d);
        return num;
    }else{
        // 抛出自定义错误
        throw new Error("参数必须是数字");  
    }
}

// 程序猿乙:调用函数的人
var d = parseInt(prompt(&#39;请输入数字&#39;));
try{
    alert(round(123.456, d));
}catch(err){
    alert(err.message);  // 接住抛出的自定义错误
}
Copier après la connexion

4. 🎜>

var n = 1;
function fun(){
    try{
        n++;
        return n;
    }catch(err){    
        // 没错误,catch不执行
        n++;
        return n;    
    }finally{
        n++;
        return n;
    }
}

console.log(fun());// 3  return为finally的
console.log(n);// 3
Copier après la connexion
var n = 1;
function fun(){
    try{
        n++;
        return n;
    }catch(err){
        // 没错误,catch不执行
        n++;
        return n;
    }finally{
        n++;
    }
}
console.log(fun()); // 2  return为try的
console.log(n); // 3
Copier après la connexion
var n = 1;
function fun(){
    try{
        n++;
        n += m;  //出错
        return n;   
    }catch(err){
        n++;
        return n;
    }finally{
        n++;
    }
}
console.log(fun());    // 3 return为catch的
console.log(n);        // 4
Copier après la connexion
Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !


Recommandations associées :

Introduction à l'objet document JavaScript

Utilisation d'ECharts pour charger des données de manière asynchrone dans des mini-programmes

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
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