实例解析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实现QueryString获取GET参数的方法
Jul 02 Javascript
jQuery 1.9移除了$.browser可以使用$.support来替代
Sep 03 Javascript
javascript实现淘宝幻灯片广告展示效果
Apr 27 Javascript
浅谈Javascript实现继承的方法
Jul 06 Javascript
JavaScript对象数组排序实例方法浅析
Jun 15 Javascript
vue v-on监听事件详解
May 17 Javascript
使用DataTable插件实现异步加载数据
Nov 19 Javascript
Vue实现带进度条的文件拖动上传功能
Feb 23 Javascript
JS关于刷新页面的相关总结
May 09 Javascript
vue axios整合使用全攻略
May 24 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
Sep 26 Javascript
浅谈vue加载优化策略
Mar 19 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
PHP is_dir() 判断给定文件名是否是一个目录
2010/05/10 PHP
解析Linux下Varnish缓存的配置优化
2013/06/20 PHP
php构造函数实例讲解
2013/11/13 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
2014/06/12 PHP
linux下安装php的memcached客户端
2014/08/03 PHP
Laravel 在views中加载公共页面的实现代码
2019/10/22 PHP
JavaScript isPrototypeOf和hasOwnProperty使用区别
2010/03/04 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
JavaScript动态插入script的基本思路及实现函数
2013/11/11 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
深入理解JavaScript中的预解析
2017/01/04 Javascript
利用HTML5+Socket.io实现摇一摇控制PC端歌曲切换
2017/01/13 Javascript
js读取json文件片段中的数据实例
2017/03/09 Javascript
lhgcalendar时间插件限制只能选择三个月的实现方法
2017/07/03 Javascript
详解a++和++a的区别
2017/08/30 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
element-ui循环显示radio控件信息的方法
2018/08/24 Javascript
百度小程序之间的页面通信过程详解
2019/07/18 Javascript
详解js location.href和window.open的几种用法和区别
2019/12/02 Javascript
vue动态设置路由权限的主要思路
2021/01/13 Vue.js
python实现搜索文本文件内容脚本
2018/06/22 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
python 动态调用函数实例解析
2019/10/21 Python
用Python制作mini翻译器的实现示例
2020/08/17 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
美国珠宝网上商店:Jeulia
2016/09/01 全球购物
大学生职业生涯规划书范文
2014/01/14 职场文书
幼儿园实习生辞职信
2014/01/20 职场文书
党支部综合考察材料
2014/05/19 职场文书
起诉书范文
2015/05/20 职场文书
客户答谢会致辞
2015/07/30 职场文书
听课评课活动心得体会
2016/01/15 职场文书
你需要掌握的20个Python常用技巧
2022/02/28 Python
JavaScript实现音乐播放器
2022/08/14 Javascript