首页 >web前端 >js教程 > 正文

javascript捕获异常用什么语句

原创2021-10-21 09:16:430664

javascript捕获异常用“try catch”语句,语法“try {// 可能会发生异常的代码} catch(error) {// 发生异常时要执行的操作}”;try语句块中捕获错误代码,catch语句块中定义处理异常的方法。

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

JS 异常处理

异常处理的目的是捕捉产生异常的代码,使整个程序不会因为异常而终止运行。在 JavaScript 中,您可以使用 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>

运行结果如下图所示:

1.png

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

  • name:错误的类型;

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

try catch finally 语句

在 try catch 语句的后面,还可以添加一个 finally 语句块,无论 try 语句块中的代码是否发生错误,finally 语句中的代码都会执行。示例代码如下:

    <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>

假如我们输入一个小于 100 的数字,例如 88,运行结果如下:

1.3015928349429721e+171
代码执行花费了:0ms

假如我们输入一个大于 100 的数字,例如 123,运行结果如下:

输入的值无效!
代码执行花费了:0ms

【推荐学习:javascript高级教程

以上就是javascript捕获异常用什么语句的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:javascript 捕获异常
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息

    青灯夜游

    今天学习一小步,明天提升一大步

    最近文章
    php怎么判断有几位小数461
    php中转换首字母大写的函数是什么382
    Javascript怎么检查对象是否为空900
    推荐视频教程
  • JavaScript设计模式完整视频教程JavaScript设计模式完整视频教程
  • JavaScript基础入门及设计模式视频教程JavaScript基础入门及设计模式视频教程
  • JavaScript基本语法及基本语句视频教程JavaScript基本语法及基本语句视频教程
  • JavaScript核心编程视频教程JavaScript核心编程视频教程
  • JavaScript深入视频教程JavaScript深入视频教程
  • 视频教程分类