实例解析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 相关文章推荐
FireFox与IE 下js兼容触发click事件的代码
Nov 20 Javascript
javascript学习笔记(六) Date 日期类型
Jun 19 Javascript
使用ionic切换页面卡顿的解决方法
Dec 16 Javascript
js select下拉联动 更具级联性!
Apr 17 Javascript
总结几道关于Node.js的面试问题
Jan 11 Javascript
Django使用多数据库的方法
Sep 06 Javascript
Angular4编程之表单响应功能示例
Dec 13 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 jQuery
详解bootstrap-fileinput文件上传控件的亲身实践
Mar 21 Javascript
jQuery实现的记住帐号密码功能完整示例
Aug 03 jQuery
layui表格设计以及数据初始化详解
Oct 26 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
Jan 04 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
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
PHP 基于文件头的文件类型验证类函数
2012/05/01 PHP
php正确输出json数据的实例讲解
2018/08/21 PHP
JavaScript语言中的Literal Syntax特性分析
2007/03/08 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
在javascript中实现函数数组的方法
2013/12/25 Javascript
jQuery调取jSon数据并展示的方法
2015/01/29 Javascript
JavaScript中的Math.atan2()方法使用详解
2015/06/15 Javascript
BootStrap创建响应式导航条实例代码
2016/05/31 Javascript
jQuery实现的多张图无缝滚动效果【测试可用】
2016/09/12 Javascript
JavaScript 继承详解(六)
2016/10/11 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
2016/12/17 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
php 解压zip压缩包内容到指定目录的实例
2018/01/23 Javascript
vue拖拽组件使用方法详解
2018/12/01 Javascript
ElementUI中el-tree节点的操作的实现
2020/02/27 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
python 多线程实现检测服务器在线情况
2015/11/25 Python
Python实现二叉搜索树
2016/02/03 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
如何用Python来理一理红楼梦里的那些关系
2019/08/14 Python
python常见字符串处理函数与用法汇总
2019/10/30 Python
Python3查找列表中重复元素的个数的3种方法详解
2020/02/13 Python
Python如何实现感知器的逻辑电路
2020/12/25 Python
Python实现Excel自动分组合并单元格
2021/02/22 Python
html5的画布canvas——画出弧线、旋转的图形实例代码+效果图
2013/06/09 HTML / CSS
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
Linux操作面试题
2012/05/16 面试题
优质护理服务演讲稿
2014/05/07 职场文书
电子商务专业应届毕业生求职信
2014/06/21 职场文书
2014民事授权委托书范本
2014/09/29 职场文书
西安大雁塔导游词
2015/02/10 职场文书
迁徙的鸟观后感
2015/06/09 职场文书
2016年党员创先争优承诺书
2016/03/25 职场文书
MySQL中order by的使用详情
2021/11/17 MySQL