浅谈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插件
Nov 24 Javascript
JavaScript的漂亮的代码片段
Jun 05 Javascript
JSP跨iframe如何传递参数实现代码
Sep 21 Javascript
jquery对ajax的支持介绍
Dec 10 Javascript
js密码强度校验
Nov 10 Javascript
js判断复选框是否选中及选中个数的实现代码
May 30 Javascript
利用vue.js插入dom节点的方法
Mar 15 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
Mar 21 Javascript
Three.js的使用及绘制基础3D图形详解
Apr 27 Javascript
JavaScript之json_动力节点Java学院整理
Jun 29 Javascript
jQuery常用选择器详解
Jul 17 jQuery
微信小程序实现点击生成随机验证码
Sep 09 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
做一个有下拉功能的留言版
2006/10/09 PHP
一个php导出oracle库的php代码
2009/04/20 PHP
如何用PHP来实现一个动态Web服务器
2015/07/29 PHP
php array_slice 取出数组中的一段序列实例
2016/11/04 PHP
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
javascript判断css3动画结束 css3动画结束的回调函数
2015/03/10 Javascript
JavaScript实现select添加option
2015/07/03 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
2016/06/09 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
js获取时间函数及扩展函数的方法
2016/10/30 Javascript
JS面向对象编程实现的Tab选项卡案例详解
2020/03/03 Javascript
深入解读VUE中的异步渲染的实现
2020/06/19 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
微信小程序弹窗禁止页面滚动的实现代码
2020/12/30 Javascript
python中比较两个列表的实例方法
2019/07/04 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
2019/08/08 Python
python实现大学人员管理系统
2019/10/25 Python
解决Numpy中sum函数求和结果维度的问题
2019/12/06 Python
pycharm中import呈现灰色原因的解决方法
2020/03/04 Python
Python实现加密的RAR文件解压的方法(密码已知)
2020/09/11 Python
如何用Python提取10000份log中的产品信息
2021/01/14 Python
浅谈CSS3动画的回调处理
2016/07/21 HTML / CSS
HTML5语音识别标签写法附图
2013/11/18 HTML / CSS
HTML5在canvas中绘制复杂形状附效果截图
2014/06/23 HTML / CSS
巴西男士胡须和头发护理产品商店:Beard
2017/11/13 全球购物
C语言编程练习
2012/04/02 面试题
个人简历的自荐信
2013/10/23 职场文书
银行会计财务工作个人的自我评价
2013/10/29 职场文书
会计电算化专业求职信
2014/06/10 职场文书
营销学习心得体会
2014/09/12 职场文书
乡镇干部个人对照检查材料思想汇报(原创篇)
2014/09/28 职场文书
开展批评与自我批评发言稿
2014/10/16 职场文书
公司禁烟通知
2015/04/23 职场文书
2015年妇产科工作总结
2015/05/18 职场文书
离婚案件上诉状
2015/05/23 职场文书
Redis IP地址的绑定的实现
2021/05/08 Redis