理论准备

★   异常捕获

△ 异常:当JavaScript引擎执行JavaScript代码时,发生了错误,导致程序停止运行;

△ 异常抛出:当异常产生,并且这个异常生成一个错误信息;

△ 异常捕获:

  1. try{
  2. (测试)发生异常的代码块;
  3. }catch(err){//捕获异常信息err
  4. 对错误信息处理;
  5. }
  △ throw 语句:通过throw语句创建一个自定义错误提示信息;
 
示例1  输出一个未定义的变量
  1. /*实现方法一*/
  2. /*function ExceptionCapture() {
  3. try {
  4. alert(str); //测试一个未经定义的变量str
  5. } catch (err) {
  6. alert(err);
  7. }
  8. }
  9. ExceptionCapture(); //调用函数*/
  10. /*实现方法二*/
  11. (function ExceptionCapture(){
  12. try{
  13. alert(str);//测试一个未经定义的变量str
  14. }catch(err){
  15. alert(err);
  16. }
  17. }());//函数的自我调用
示例2  测试输入框
  1. <h2>JS中的异常捕获</h2>
  2. <hr/>
  3. <mark>确保输入框内有内容,否则提交会弹出提示窗口</mark>
  4. <br/>
  5. <input type="text" id="txt">
  6. <button onclick="demo()">Submit</button>
  7. <script>
  8. function vertifyData(){
  9. var a = document.getElementById("txt").value;
  10. if(a ==""){
  11. alert("Please input something\n来自调用函数");
  12. /*利用\n实现弹窗提示内容换行*/
  13. }
  14. }
  15. function demo(){
  16. try{
  17. vertifyData();
  18. throw"你为输入内容\n来自throw的自定义信息";
  19. }catch(err){
  20. alert(err);
  21. }
  22. }
☢注意点
try语句块中的代码无论是否有错误都会执行,而catch中的代码块则只会在有错误时才会触发;
 
   ========================================================
 

JavaScript异常捕获的更多相关文章

  1. Javascript的异常捕获机制

    這個異常處理機制,之前也只是,但是沒有怎麼用過,用了一次后發現還可以, 和java,python的異常處理機制也很相似 Javascript的异常捕获机制 1.1 基本的try…catch语句 ES3 ...

  2. JavaScript的事件及异常捕获

    事件处理 [onClick]单击事件.[onMouseOver]鼠标经过事件.[onMouseOut]鼠标移出事件.[onChange]文本内容改变事件.[onSelect]文本被框选事件.[onFo ...

  3. javascript学习笔记(五):异常捕获和事件处理

    异常捕获 Try{ 发生异常的代码块 }catch(err){ 异常信息处理 } <!DOCTYPE html> <html> <head lang="en&q ...

  4. atitit.js浏览器环境下的全局异常捕获

    atitit.js浏览器环境下的全局异常捕获 window.onerror = function(errorMessage, scriptURI, lineNumber) { var s= JSON. ...

  5. Servlet过滤器——异常捕获过滤器

    1.概述 介绍如何实现异常捕获过滤器. 2.技术要点 本实例主要是在过滤器Filter的doFilter()方法中,对执行过滤器链的chain的doFilter()语句处添加try…catch异常捕获 ...

  6. 异常捕获 崩溃 Bugly ACRC 简介 总结 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. .NET 基础 一步步 一幕幕[数组、集合、异常捕获]

    数组.集合.异常捕获 数组: 一次性存储多个相同类型的变量. 一维数组: 语法: 数组类型[] 数组名=new 数组类型[数组长度]; 声明数组的语法: A.数据类型 [] 数组名称= new 数据类 ...

  8. MVC 好记星不如烂笔头之 ---> 全局异常捕获以及ACTION捕获

    public class BaseController : Controller { /// <summary> /// Called after the action method is ...

  9. JavaScript中捕获/阻止捕获、冒泡/阻止冒泡

    JavaScript中捕获/阻止捕获.冒泡/阻止冒泡 事件流描述的是从页面中接收事件的顺序.提出事件流概念的正是IE和Netscape,但是前者提出的是我们常用的事件冒泡流,而后者提出的是事件捕获流. ...

随机推荐

  1. hive中grouping sets的使用

    hive中grouping sets 数量较多时如何处理?    可以使用如下设置来 set hive.new.job.grouping.set.cardinality = 30; 这条设置的意义在于 ...

  2. 更改chrome底色为护目色

    找到chrome目录:C:\Documents and Settings\用户名\Local Settings\Application Data\Google\Chrome\User Data\Def ...

  3. 正则指引-量词demo

    class Program { static void Main(string[] args) { string str = "1\"3"; var re1 = Rege ...

  4. [原创]实现android知乎、一览等的开场动画图片放大效果

    代码下载地址: https://github.com/Carbs0126/AutoZoomInImageView 知乎等app的开场动画为:一张图片被显示到屏幕的正中央,并充满整个屏幕,过一小段时间后 ...

  5. Python基本语句

    x = 1 y = 1 dataf = 1.0 def fun1(): print("fun1") class ClassB(): def __init__(self): prin ...

  6. 3种归并操作js代码

    /**良哥的*/ function merge(a, b) { var aLen = a.length, bLen = b.length, maxLen = Math.max(aLen, bLen), ...

  7. U3D4.X版本无法安装MONODEV编辑器

    可能是由于机器无法成功安装.NET 4.0的缘故

  8. 自定义控件的自定义的属性attrs.xml下的declare-styleable中format详解

    最近在摸索自定义控件,查找到一些自定义属性的一些资料,解决转载记载下来:看了此详解才方便理解! 我们在做项目的时候,由于android自带的属性不能满足需求,android提供了自定义属性的方法,其中 ...

  9. 让我们一起Go(十)

    前言: 本系列还没流产,继续难产中,哈哈,只怪我没专心,在期间又偷偷去学了python,ruby,scala,haskell这几种语言,如果你不幸是本系列的读者,那么你得慢慢等后面的了,等不及可以过几 ...

  10. 【转】web集群时session同步的3种方法

    转载请注明作者:海底苍鹰地址:http://blog.51yip.com/server/922.html 在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问 ...