浅谈javascript错误处理


Posted in Javascript onAugust 11, 2019

当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误:可能是语法错误,通常是程序员造成的编码错误或错别字;可能是拼写错误或语言中缺少的功能(可能由于浏览器差异);可能是由于来自服务器或用户的错误输出而导致的错误;也可能是由于许多其他不可预知的因素。

那么js有没有好的可以检测错误的呢?有的,那就是:throw、try 和 catch

JavaScript 抛出(throw)错误

当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息。

描述这种情况的技术术语是:JavaScript 将抛出一个错误。

JavaScript try 和 catch

try 语句允许我们定义在执行时进行错误测试的代码块。

catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。

JavaScript 语句 try 和 catch 是成对出现的。

try{
   //可能会导致错误的代码
  }catch(error(function() {
   /* Act on the event */
  });
  )

例子:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title>JavaScript教程</title>
 <script>
 var txt="";
 function message(){
  try {
   adddlert("Welcome guest!");
  }
  catch(err) {
   txt="本页有一个错误。\n\n";
   txt+="错误描述:" + err.message + "\n\n";
   txt+="点击确定继续。\n\n";
   alert(txt);
  }
 }
</script>
</head>
<body>
<input type="button" value="查看消息" onclick="message()" />
</body>
</html>
Javascript 相关文章推荐
JQuery Tips(2) 关于$()包装集你不知道的
Dec 14 Javascript
JQuery中关于jquery.js与jquery.min.js的比较探讨
May 15 Javascript
javascript如何动态加载表格与动态添加表格行
Nov 27 Javascript
javascript中取前n天日期的两种方法分享
Jan 26 Javascript
分享两个手机访问pc网站自动跳转手机端网站代码
Dec 24 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
Apr 01 Javascript
两种方法解决javascript url post 特殊字符转义 + &amp; #
Apr 13 Javascript
js+html5实现canvas绘制椭圆形图案的方法
May 21 Javascript
浅谈Koa服务限流方法实践
Oct 23 Javascript
node内置调试方法总结
Feb 22 Javascript
express框架下使用session的方法
Jul 31 Javascript
详解利用eventemitter2实现Vue组件通信
Nov 04 Javascript
axios异步提交表单数据的几种方法
Aug 11 #Javascript
node.js实现带进度条的多文件上传
Mar 27 #Javascript
基于Express框架使用POST传递Form数据
Aug 10 #Javascript
Vue实现点击显示不同图片的效果
Aug 10 #Javascript
vue+eslint+vscode配置教程
Aug 09 #Javascript
一个手写的vue放大镜效果
Aug 09 #Javascript
详解Vue-cli3.X使用px2rem遇到的问题
Aug 09 #Javascript
You might like
非常实用的php弹出错误警告函数扩展性强
2014/01/17 PHP
Thinkphp将二维数组变为标签适用的一维数组方法总结
2014/10/30 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
2015/12/23 Javascript
node.js中fs.stat与fs.fstat的区别详解
2017/06/01 Javascript
Vue仿手机qq的实例代码(demo)
2017/09/08 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
详解小程序原生使用ES7 async/await语法
2018/08/06 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
微信小程序iOS下拉白屏晃动问题解决方案
2019/10/12 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
2019/10/16 Javascript
vue-cli创建的项目中的gitHooks原理解析
2020/02/14 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
2020/07/26 Javascript
js在HTML的三种引用方式详解
2020/08/29 Javascript
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
python在ubuntu中的几种安装方法(小结)
2017/12/08 Python
在dataframe两列日期相减并且得到具体的月数实例
2018/07/03 Python
在PyCharm下打包*.py程序成.exe的方法
2018/11/29 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
解析python的局部变量和全局变量
2019/08/15 Python
python二维键值数组生成转json的例子
2019/12/06 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
澳大利亚百货公司:David Jones
2018/02/08 全球购物
网络维护管理员的自我评价分享
2013/11/11 职场文书
小学生获奖感言范文
2014/02/02 职场文书
文科生自我鉴定
2014/02/15 职场文书
土木工程专业推荐信
2014/02/19 职场文书
信息学院毕业生自荐信范文
2014/03/04 职场文书
《山谷中的谜底》教学反思
2014/04/26 职场文书
妇联主席先进事迹
2014/05/18 职场文书
学校党委干部个人对照检查材料思想汇报
2014/10/09 职场文书
离婚协议书怎么写
2015/01/26 职场文书
《平行四边形的面积》教学反思
2016/02/16 职场文书