实例解析js中try、catch、finally的执行规则


Posted in Javascript onFebruary 24, 2017

try:  语句测试代码块的错误,一般把可能会出错的代码放到这里

catch: 只有try里面的代码块发生错误时,才会执行这里的代码,参数err记录着try里面代码的错误信息

finally: 无论有无异常里面代码都会执行

try{
 console.log(0);
 }catch (err){
 console.log(1);
 console.log(hello);
 }finally {
 console.log(2);
 }
 //最后结果分别打印出 0 2
 /*
 try{
 a.b.c();
 }catch (e){
 console.log(1);
 console.log(hello);
 }finally {
 console.log(2);
 }
 */
 //最后结果分别打印出 1 2 报错:hello is not defined
 /*
 try{
 a.b.c();
 }catch (e){
 console.log(1);
 try{
  console.log(hello);
 }catch (e){
  console.log(3);
 }
 }finally {
 console.log(2);
 console.log(word);
 } 
 */
 //最后结果分别打印出 1 3 2 报错:word is not defined
 /*
 try{
 a.b.c();
 }catch (e){
 console.log(1);
 console.log(hello);
 }finally {
 console.log(2);
 console.log(word);
 }*/
 //最后结果分别打印出 1 2 报错:word is not defined

总结:

try里面的代码报错的时候,catch里面的代码才会执行,finally里面的代码永远会执行

catch和finally里面,正常的代码会从上到下顺序执行

如果只是catch里面代码出错,则报catch里面的错误

如果catch和finally都出错则会报finally里面的错误

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript中的16进制字符(改进)
Nov 21 Javascript
关于JAVASCRIPT urldecode URL解码的问题
Jan 08 Javascript
复选框全选与全不选操作实现思路
Aug 18 Javascript
laytpl 精致巧妙的JavaScript模板引擎
Aug 29 Javascript
JS动态改变表格边框宽度的方法
Mar 31 Javascript
创建自己的jquery表格插件
Nov 25 Javascript
详解js的延迟对象、跨域、模板引擎、弹出层、AJAX【附实例下载】
Dec 19 Javascript
详解vue-Resource(与后端数据交互)
Jan 16 Javascript
微信小程序实现滑动删除效果
May 19 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
Dec 06 Javascript
javascript实现简易数码时钟
Mar 30 Javascript
微信小程序自定义底部弹出框功能
Nov 18 Javascript
js中开关变量使用实例
Feb 24 #Javascript
angularjs点击图片放大实现上传图片预览
Feb 24 #Javascript
js实现导航吸顶效果
Feb 24 #Javascript
canvas绘制多边形
Feb 24 #Javascript
angularjs实现多张图片上传并预览功能
Feb 24 #Javascript
Angularjs分页查询的实现
Feb 24 #Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
Feb 24 #Javascript
You might like
实用函数5
2007/11/08 PHP
php 生成WML页面方法详解
2009/08/09 PHP
简单的cookie计数器实现源码
2013/06/07 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
2019/12/20 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
2007/03/10 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
使用js检测浏览器的实现代码
2013/05/14 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
js代码实现随机颜色的小方块
2015/07/30 Javascript
js中unicode转码方法详解
2015/10/09 Javascript
jQuery选择器及jquery案例详解(必看)
2016/05/20 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
利用Jasmine对Angular进行单元测试的方法详解
2017/06/12 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
利用jquery如何从json中读取数据追加到html中
2017/12/01 jQuery
vue路由插件之vue-route
2019/06/13 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
2019/10/09 Javascript
基于js判断浏览器是否支持webGL
2020/04/18 Javascript
python魔法方法-自定义序列详解
2016/07/21 Python
Django项目开发中cookies和session的常用操作分析
2018/07/03 Python
Python日志模块logging基本用法分析
2018/08/23 Python
python opencv 批量改变图片的尺寸大小的方法
2019/06/28 Python
一文秒懂python读写csv xml json文件各种骚操作
2019/07/04 Python
Python 实用技巧之利用Shell通配符做字符串匹配
2019/08/23 Python
Pandas操作CSV文件的读写实现方法
2019/11/13 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
2020/05/19 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
英国手机零售商:Metrofone
2019/03/18 全球购物
校园十佳歌手策划书
2014/01/22 职场文书
应届毕业生应聘自荐信范文
2014/02/26 职场文书
协议书范本
2014/04/23 职场文书
学校师德师风自我剖析材料
2014/09/29 职场文书
工作检讨书范文
2015/01/23 职场文书
出国留学导师推荐信
2015/03/26 职场文书
解决pytorch-gpu 安装失败的记录
2021/05/24 Python