javascript中的try catch异常捕获机制用法分析


Posted in Javascript onDecember 14, 2016

本文实例讲述了javascript中的try catch异常捕获机制用法。分享给大家供大家参考,具体如下:

1.跟Java一样,JavaScript也具有try catch块,进行异常捕获的机制。

(1)典型的try catch语句

try{
}
catch{
}
finally{
}

跟java中一样,JS中最为典型的try catch语句也同样分为了三个部分,try用于捕获异常,catch用于处理异常,而finally用于关闭资源等后续操作。

举例:

try{
  throw "error"
}
catch(ex)
{
  console.log(ex);
}
finally{
  console.log("finally")
}

控制台依次输出:error,finally

(2)try,catch块中,catch块和finally块只需要其一即可,因此如下的try catch块也是可以实现的

举例:

try {
  throw "error"
}
finally{
}

只抛出异常,其他情况不一一举例

(3)try catch块中包含了try catch块

try{ 
   try{
       throw "error"
     }
   finally{
      console.log("finally1")
     }
}
catch(ex)
{
   console.log(ex)
}
finally{
  console.log("finally2")
}

如果是像这样的嵌套循环,那么输出的顺序为:finally1,error,finally2

(4)嵌套try catch块中,抛出异常

try{
   try{
      throw "error1"
   }
   catch(ex)
   { 
      console.log(ex);
      throw "error2"
   }
   finally{
     console.log( "finally1")
   }
}
catch(ex)
{
    console.log(ex);
}
finally{
   console.log("finally2")
}

最终的输出为:error1,finally1,error2,finally2

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
理解Javascript_12_执行模型浅析
Oct 18 Javascript
JavaScript事件委托技术实例分析
Feb 06 Javascript
8 行 Node.js 代码实现代理服务器
Dec 05 Javascript
客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解
Aug 26 Javascript
JS返回顶部实例代码
Aug 09 Javascript
JavaScript 数组去重并统计重复元素出现的次数实例
Dec 14 Javascript
详解vue-cli项目中怎么使用mock数据
May 29 Javascript
小程序外卖订单界面的示例代码
Dec 30 Javascript
vue自定义标签和单页面多路由的实现代码
May 03 Javascript
vue-cli4.x创建企业级项目的方法步骤
Jun 18 Javascript
使用Vue实现一个树组件的示例
Nov 06 Javascript
解读Vue组件注册方式
May 15 Vue.js
微信小程序 scroll-view组件实现列表页实例代码
Dec 14 #Javascript
AngularJS指令中的绑定策略实例分析
Dec 14 #Javascript
JavaScript触发onScroll事件的函数节流详解
Dec 14 #Javascript
AngularJS指令与指令之间的交互功能示例
Dec 14 #Javascript
AngularJS指令与控制器之间的交互功能示例
Dec 14 #Javascript
网站申请不到支付宝接口、微信接口,免接口收款实现方式几种解决办法
Dec 14 #Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 #Javascript
You might like
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
php session应用实例 登录验证
2009/03/16 PHP
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
PHP实现多级分类生成树的方法示例
2017/02/07 PHP
Yii2.0实现的批量更新及批量插入功能示例
2019/01/29 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
Javascript 5种方法实现过滤删除前后所有空格
2016/06/22 Javascript
JS完成画圆圈的小球
2017/03/07 Javascript
Vue项目部署在Spring Boot出现页面空白问题的解决方案
2018/11/26 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
vue实现列表滚动的过渡动画
2020/06/29 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
python人人网登录应用实例
2014/09/26 Python
python实现自动发送邮件
2018/06/20 Python
关于Pycharm无法debug问题的总结
2019/01/19 Python
python 二维数组90度旋转的方法
2019/01/28 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法
2019/09/06 Python
python生成任意频率正弦波方式
2020/02/25 Python
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
Staples美国官方网站:办公用品一站式采购
2016/07/28 全球购物
香港化妆品经销商:我的公主
2016/08/05 全球购物
Spartoo西班牙官网:法国时尚购物网站
2018/03/27 全球购物
英国空调、除湿机和通风设备排名第一:Air Con Centre
2019/02/25 全球购物
eBay美国官网:eBay.com
2020/10/24 全球购物
简述网络文件系统NFS,并说明其作用
2016/10/19 面试题
数控专业推荐信范文
2013/12/02 职场文书
英文推荐信格式范文
2014/05/09 职场文书
会计电算化专业求职信
2014/06/10 职场文书
2014年基层党建工作总结
2014/11/11 职场文书
实习生辞职信范文
2015/03/02 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
mysql拆分字符串作为查询条件的示例代码
2022/07/07 MySQL
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL