理论准备

★   异常捕获

△ 异常:当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. 2015 年 JavaScript 开发者调查报告

    你写什么类型的 JavaScript? 97.4% 的受访者写 JavaScript 的 Web 浏览器,其中有 37% 写移动 Web 应用. 一些参与者回复,他们会在其他地方用 JavaScrip ...

  2. Faster R-CNN CPU环境搭建

    操作系统: bigtop@bigtop-SdcOS-Hypervisor:~/py-faster-rcnn/tools$ cat /etc/issue Ubuntu LTS \n \l Python版 ...

  3. MySQL、PostgreSQL、Ingres r3、MaxDB等开源数据库的详细比较

    1.MySQL 5 作为当今最流行的开放源码数据库之一,MySQL数据库为用户提供了一个相对简单的 解决方案,适用于广泛的应用程序部署,能够降低用户的TCO.MySQL是一个多线程.结构化查询语言(S ...

  4. Asp.net Core中使用Entity Framework Core CodeFirst

    1.安装对应的包 "Microsoft.EntityFrameworkCore.Design": "1.1.0", "Microsoft.Entity ...

  5. 高吞吐量的分布式发布订阅消息系统Kafka--安装及测试

    一.Kafka概述 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因 ...

  6. 提高FOR插入数据库动作的优化代码

    await Task.Factory.StartNew(() => Parallel.ForEach(result.data.o, s => { sql = "insert in ...

  7. android中的提示信息显示方法(toast应用)

    android中的提示信息显示方法(toast应用) (2011-10-17 11:02:06) 转载▼ 标签: android toast 杂谈 分类: Android android中toast的 ...

  8. mycat配置日志

    1: 1: MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' ...

  9. Java8简明教程(转载)

    ImportNew注:有兴趣第一时间学习Java 8的Java开发者,欢迎围观<征集参与Java 8原创系列文章作者>. 以下是<Java 8简明教程>的正文. “Java并没 ...

  10. 为应用程序池 'DefaultAppPool' 提供服务的进程无法响应Ping

    打开Windows 2008 的事件查看器,应用警告提示: 为应用程序池 'DefaultAppPool' 提供服务的进程无法响应 Ping.进程 ID 是 '2144'. 注意: 需要重新注册一vb ...