浅谈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 相关文章推荐
xml和web特殊字符
Apr 28 Javascript
javascript学习笔记(十一) 正则表达式介绍
Jun 20 Javascript
浅析Js(Jquery)中,字符串与JSON格式互相转换的示例(直接运行实例)
Jul 09 Javascript
判断是否安装flash player及当前版本的JS代码
Aug 08 Javascript
利用javascript实现web页面中指定区域打印
Oct 30 Javascript
JavaScript中的常见问题解决方法(乱码,IE缓存,代理)
Nov 28 Javascript
在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口的方法
Aug 05 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
Aug 05 Javascript
WEB 前端开发中防治重复提交的实现方法
Oct 26 Javascript
vue2.0 中使用transition实现动画效果使用心得
Aug 13 Javascript
js单线程的本质 Event Loop解析
Oct 29 Javascript
js中forEach,for in,for of循环的用法示例小结
Mar 14 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 mkdir()定义和用法
2009/01/14 PHP
PHP 调试工具Debug Tools
2011/04/30 PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
2012/10/03 PHP
php压缩HTML函数轻松实现压缩html/js/Css及注意事项
2013/01/27 PHP
网页的分页下标生成代码(PHP后端方法)
2016/02/03 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
为Yahoo! UI Extensions Grid增加内置的可编辑器
2007/03/10 Javascript
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
通用JS事件写法实现代码
2009/01/07 Javascript
70+漂亮且极具亲和力的导航菜单设计国外网站推荐
2011/09/20 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
2014/11/03 Javascript
window.close(); 关闭浏览器窗口js代码的总结介绍
2016/07/14 Javascript
Angular.js实现注册系统的实例详解
2016/12/18 Javascript
JavaScript省市级联下拉菜单实例
2017/02/14 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
vue.js中npm安装教程图解
2018/04/10 Javascript
mpvue微信小程序的接口请求fly全局拦截代码实例
2019/11/13 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
js定时器出现第一次延迟的原因及解决方法
2021/01/04 Javascript
Python 文件读写操作实例详解
2014/03/12 Python
在python环境下运用kafka对数据进行实时传输的方法
2018/12/27 Python
Python字符串的修改方法实例
2019/12/19 Python
torch 中各种图像格式转换的实现方法
2019/12/26 Python
Python使用扩展库pywin32实现批量文档打印实例
2020/04/09 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
CSS3中新增的对文本和字体的设置
2020/02/03 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
《小松树和大松树》教学反思
2014/02/20 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
学生会招新宣传语
2015/07/13 职场文书
导游词之泉州崇武古城
2019/12/20 职场文书
Java 语言中Object 类和System 类详解
2021/07/07 Java/Android