Heim  >  Artikel  >  Web-Frontend  >  Welche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?

Welche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?

青灯夜游
青灯夜游Original
2021-10-15 17:11:363707Durchsuche

Javascript verwendet die „try-catch“-Anweisung, um Ausnahmen abzufangen, und die Syntax lautet „try {// Code, wo eine Ausnahme auftreten kann} catch(error) {// Operation, die ausgeführt werden soll, wenn eine Ausnahme auftritt}“; Der Code wird im Try-Anweisungsblock erfasst. Die Methode zur Behandlung von Ausnahmen wird im Catch-Anweisungsblock definiert.

Welche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

JS-Ausnahmebehandlung

Der Zweck der Ausnahmebehandlung besteht darin, den Code abzufangen, der Ausnahmen generiert, damit das gesamte Programm nicht aufgrund von Ausnahmen beendet wird. In JavaScript können Sie die Anweisung try Catch verwenden, um Ausnahmen abzufangen und entsprechend zu behandeln. Das Syntaxformat ist wie folgt: 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>

运行结果如下图所示:

Welche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?

当 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>
Wir können jeden Code, der Ausnahmen verursachen kann, in einen Try-Anweisungsblock einfügen. Und definieren Sie Methoden zur Behandlung von Ausnahmen im Catch-Anweisungsblock. Wenn im Code im Try-Anweisungsblock ein Fehler auftritt, springt der Code sofort vom Try-Anweisungsblock zum Catch-Anweisungsblock. Wenn im Code im Try-Anweisungsblock kein Fehler auftritt, wird der Code im Catch-Anweisungsblock ausgeführt ignoriert werden.
1.3015928349429721e+171
代码执行花费了:0ms

Die Laufergebnisse sind wie folgt:

Welche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?

Wenn im Code im try-Anweisungsblock eine Ausnahme auftritt, wird ein Fehlerobjekt (z. B. der Fehler in Catch(error) im obigen Code) erstellt und ausgelöst zwei Attribute, wie folgt:

🎜try-catch-final-Anweisung🎜🎜-Anweisung 🎜🎜🎜Nach der try-catch-Anweisung können Sie auch einen final-Anweisungsblock hinzufügen, unabhängig davon, ob der Code im try Anweisungsblock Wenn ein Fehler auftritt, wird der Code in der final-Anweisung ausgeführt. Der Beispielcode lautet wie folgt: 🎜
输入的值无效!
代码执行花费了:0ms
🎜 Wenn wir eine Zahl kleiner als 100 eingeben, z. B. 88, lautet das laufende Ergebnis wie folgt: 🎜rrreee🎜 Wenn wir eine Zahl größer als 100 eingeben, z. B. 123, lautet das laufende Ergebnis wie folgt: 🎜rrreee🎜 [Empfohlenes Lernen: 🎜 JavaScript-Tutorial für Fortgeschrittene🎜] 🎜

Das obige ist der detaillierte Inhalt vonWelche Anweisung verwendet JavaScript, um Ausnahmen abzufangen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn