JavaScript 基础教程JavaScript 简介JavaScript 用法JavaScript 输出JavaScript 语法JavaScript 语句JavaScript 注释JavaScript 变量JavaScript 数据类型JavaScript 对象JavaScript 函数JavaScript 作用域JavaScript 事件JavaScript 字符串JavaScript 运算符JavaScript 比较和逻辑运算符JavaScript if...else 语句JavaScript switch 语句JavaScript for 循环JavaScript while 循环JavaScript break 和 continue 语句JavaScript typeof, null, undefinedJavaScript 类型转换JavaScript 正则表达式JavaScript 错误throw try catchJavaScript 调试JavaScript 变量提升JavaScript 严格模式 (use strict)JavaScript 使用误区JavaScript 表单JavaScript 表单验证JavaScript 验证 APIJavaScript 保留关键字JavaScript JSONjavascript :void(0) 含义JavaScript 代码规范JavaScript 函数定义JavaScript 函数参数JavaScript 函数调用JavaScript 闭包JavaScript HTML DOMJavaScript DOM- 改变 HTMLJavaScript DOM - 改变 CSSJavaScript HTML DOM 事件JavaScript DOM EventListenerJavaScript DOM 元素(节点)JavaScript 对象类型JavaScript Number 对象JavaScript 字符串(String)对象JavaScript Date 对象JavaScript Array 对象JavaScript Boolean 对象JavaScript Math 对象JavaScript RegExp 对象JavaScript window 对象JavaScript window.screen 对象JavaScript window.location 对象JavaScript window.history 对象JavaScript window.navigator 对象JavaScript 弹窗JavaScript 计时事件JavaScript CookieJS中的if和switch该如何选择?JS优化多分支结构JS中的while和for循环该如何选择?JS优化循环结构JS输出杨辉三角JS定义字符串(3种方式)JS获取字符串长度JS字符串拼接/连接(3种方式)JS字符串查找(6种方法)JS截取字符串JS字符串替换replace()JS字符串大写小写转换JS字符串比较大小JS字符串和数组之间的转换JS给字符串添加HTML标签JS去除字符串前后空格JS Unicode编码和解码JS Base64编码和解码JS在接收表单数据时过滤特殊字符JS自定义编码和解码方案

JavaScript 错误throw try catch

try 语句测试代码块的错误,catch 语句处理错误,throw 语句创建自定义错误


JavaScript 错误

JavaScript 引擎执行 JavaScript 代码时,可能会发生各种错误

  1. 可能是语法错误,通常是程序员造成的编码错误或错别字

  2. 可能是拼写错误或语言中缺少的功能(可能由于浏览器差异)

  3. 可能是由于来自服务器或用户的错误输出而导致的错误

  4. 当然,也可能是由于许多其它不可预知的因素


JavaScript 抛出(throw)错误

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

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


JavaScript try 和 catch

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

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

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


语法

try {
  //在这里运行代码
} catch(err) {
  //在这里处理错误
}

下面的范例,我们故意在 try 块的代码中写了一个错字

catch 块会捕捉到 try 块中的错误,并执行代码来处理它

var txt=""; 
function message() 
{ 
    try { 
        adddlert("Welcome guest!"); 
    } catch(err) { 
        txt="本页有一个错误。\n\n"; 
        txt+="错误描述:" + err.message + "\n\n"; 
        txt+="点击确定继续。\n\n"; 
        alert(txt); 
    } 
}


Throw 语句

throw 语句允许我们创建自定义错误

正确的技术术语是:创建或 抛出异常 ( exception )

如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息


语法

throw exception

异常可以是 JavaScript 字符串、数字、逻辑值或对象

下面的范例用于检测输入变量的值

如果值是错误的,会抛出一个异常(错误)

catch 会捕捉到这个错误,并显示一段自定义的错误消息

function myFunction() {
    var message, x;
    message = document.getElementById("message");
    message.innerhtml = "";
    x = document.getElementById("demo").value;
    try { 
        if(x == "")  throw "值为空";
        if(isNaN(x)) throw "不是数字";
        x = Number(x);
        if(x < 5)    throw "太小";
        if(x > 10)   throw "太大";
    }
    catch(err) {
        message.innerHTML = "错误: " + err;
    }
}

链接: https://fly63.com/course/7_491