JavaScript 错误异常
Posted wangyuyang1016
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 错误异常相关的知识,希望对你有一定的参考价值。
javascript 错误异常
错误异常语句
- try 语句测试代码块中的错误
- catch 语句处理错误
- throw 语句允许自定义错误
- finally 语句在错误异常语句后,必须执行的代码块
try
adddlert("Hello") ;
catch (err)
document.getElementById("demo").innerhtml = err.message ;
// 结果 : adddlert is not defined
JavaScript 将 adddlert 捕捉为一个错误异常,然后执行 catch 代码块来执行错误。
try … catch 语句
try
需要检测的代码块;
catch
处理 try 检测到错误的代码块;
抛出异常
当发送错误是,JavaScript通常会抛出异常并产生异常错误信息(抛出异常)
JavaScript实际上会创建带有两个属性的Error对象:name 和 message
throw 语句
- throw:允许您创建自定义的错误
throw "To Bug" ;
throw 500 ;
如果把 throw 和 tyr … catch 结合使用,可以控制程序流并生成自定义错误信息。
输入验证实例
<!DOCTYPE html>
<html>
<head>
<meta charset = "utf-8">
<title> javascript </title>
</head>
<body>
<div>
<input id="demo" type = "text">
<button type = "button" onclick = myFunction() >
测试
</button>
</div>
<div>
<p id = "message"></p>
</div>
<script>
function myFunction()
var message , x ;
message = document.getElementById("message") ;
message.innerHTML = "" ;
x = document.getElementById("demo").value ;
try
if ( x == "")
throw "Null" ;
if (isNaN(x))
throw "No is Number" ;
if (x < 5)
throw "小" ;
if (x > 10)
throw "大" ;
catch (error)
message.innerHTML = "输入值:" + error ;
</script>
</body>
</html>
代码对输入内容进行了异常错误检测,并使用throw自定义错误异常信息
- HTML验证
<input id = "demo" type = "number" min = "5" max = "10" step = "1" >
finally 语句
- finally:允许在try后必须执行的代码块
try
try检测代码块;
catch(error)
处理错误的代码块;
finally
必须要执行的代码块;
- 实例
<!DOCTYPE html>
<html>
<head>
<meta charset = "utf-8">
<title> javascript </title>
</head>
<body>
<div>
<input id="demo" type = "text">
<button type = "button" onclick = myFunction() >
测试
</button>
</div>
<div>
<p id = "message"></p>
</div>
<script>
function myFunction()
var message , x ;
message = document.getElementById("message") ;
message.innerHTML = "" ;
x = document.getElementById("demo").value ;
try
if ( x == "")
throw "Null" ;
if (isNaN(x))
throw "No is Number" ;
if (x < 5)
throw "小" ;
if (x > 10)
throw "大" ;
catch (error)
message.innerHTML = "输入值:" + error ;
finally
document.getElementById("demo").value = "" ;
</script>
</body>
</html>
以输入验证为实例作为依据,在38~39行加入 finally 语句,无乱try…catch 语句结果如何
Error 对象
- JavaScript拥有内置的error对象
Error对象属性
属性 | 描述 |
---|---|
name | 设置或返回错误名 |
message | 设置或返回错误信息(一条字符串) |
Error Name Values
- Error的name属性可返回六个不同的值
错误值 | 描述 |
---|---|
EvalError | 在eval()函数中发生的错误 |
RangeError | 超出数字范围的错误 |
ReferenceError | 发生非法引用的错误 |
SyntaxError | 发生语法的错误 |
TypeError | 发生类型的错误 |
URIError | 在 encodeURI() 中发生的错误 |
以上是关于JavaScript 错误异常的主要内容,如果未能解决你的问题,请参考以下文章