Maison  >  Article  >  interface Web  >  Quelle instruction JavaScript utilise-t-il pour intercepter les exceptions ?

Quelle instruction JavaScript utilise-t-il pour intercepter les exceptions ?

青灯夜游
青灯夜游original
2021-10-15 17:11:363703parcourir

Javascript utilise l'instruction "try catch" pour intercepter les exceptions, et la syntaxe est "try {// Code où une exception peut se produire} catch(error) {// Opération à effectuer lorsqu'une exception se produit}" l'erreur ; le code est capturé dans le bloc d'instruction try. La méthode de gestion des exceptions est définie dans le bloc d'instruction catch.

Quelle instruction JavaScript utilise-t-il pour intercepter les exceptions ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

Gestion des exceptions JS

Le but de la gestion des exceptions est d'intercepter le code qui génère des exceptions afin que l'ensemble du programme ne se termine pas en raison d'exceptions. En JavaScript, vous pouvez utiliser l'instruction try catch pour intercepter les exceptions et les gérer en conséquence. Le format de syntaxe est le suivant : try catch 语句来捕获异常,并做出相应处理,语法格式如下:

try {
    // 可能会发生异常的代码
} catch(error) {
    // 发生异常时要执行的操作
}

我们可以将任何可能发生异常的代码放到 try 语句块中,并在 catch 语句块中定义处理异常的方法。如果 try 语句块中的代码发生错误,代码会立即从 try 语句块跳转到 catch 语句块中,如果 try 语句块中代码没有发生错误,就会忽略 catch 语句块中的代码。

    <script>
        try {
            var title = "JavaScript";
            document.write(title);
            // 调用一个未定义的变量
            document.write(str);
            // 若发生错误,则不会执行以下行
            alert("所有语句都已成功执行。");
        } catch(error) {
            // 处理错误
            alert("错误信息: " + error.message);
        }
        // 继续执行下面的代码
        document.write("<p>Hello World!</p>");
    </script>

运行结果如下图所示:

Quelle instruction JavaScript utilise-t-il pour intercepter les exceptions ?

当 try 语句块中的代码出现异常时,会创建并抛出一个 Error 对象(例如上面代码内catch(error)中的 error),对象中包含两个属性,如下所示:

  • name:错误的类型;

  • message:对错误的描述信息。

<strong>try catch finally</strong>

    <script>
        // 接收用户输入的参数
        var num = prompt("输入一个 0 到 100 的数字");
        // 获取当前时间
        var start = Date.now();
        try {
            if(num > 0 && num <= 100) {
                console.log(Math.pow(num, num)); // 指数幂的基
            } else {
                console.log("输入的值无效!");
            }
        } catch(e) {
            console.log(e.message);
        } finally {
            // 显示执行代码所用的时间
            console.log("代码执行花费了:" + (Date.now() - start) + "ms");
        }
    </script>
Nous pouvons mettre n'importe quel code susceptible de provoquer des exceptions dans un bloc d'instruction try, Et définissez des méthodes de gestion des exceptions dans le bloc d'instruction catch. Si une erreur se produit dans le code du bloc d'instructions try, le code passera immédiatement du bloc d'instructions try au bloc d'instructions catch. Si aucune erreur ne se produit dans le code du bloc d'instructions try, le code du bloc d'instructions catch le fera. être ignoré.
1.3015928349429721e+171
代码执行花费了:0ms

Les résultats en cours d'exécution sont les suivants :

Quelle instruction JavaScript utilise-t-il pour intercepter les exceptions ?

Lorsqu'une exception se produit dans le code du bloc d'instruction try, un objet Error (comme l'erreur dans catch(error) dans le code ci-dessus) sera créé et lancé. deux attributs, comme suit :

🎜try catchfinally🎜🎜 déclaration 🎜🎜🎜Après l'instruction try catch, vous pouvez également ajouter un bloc d'instructions final, que le code dans l'instruction try bloc d'instructions Si une erreur se produit, le code de l'instruction final sera exécuté. L'exemple de code est le suivant : 🎜
输入的值无效!
代码执行花费了:0ms
🎜 Si nous saisissons un nombre inférieur à 100, tel que 88, le résultat courant est le suivant : 🎜rrreee🎜 Si nous saisissons un nombre supérieur à 100, tel que 123, le résultat courant est comme suit : 🎜rrreee🎜 [Apprentissage recommandé : 🎜 Tutoriel avancé JavaScript🎜】🎜

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!

Déclaration:
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