转载自:http://blog.youkuaiyun.com/sinat_26342009/article/details/47020765
<!DOCTYPE html>
<html><head>
<meta charset="UTF-8">
<title>JavaScript 错误 - Throw、Try 和 Catch</title>
</head>
<body>
<hr>
try 语句测试代码块的错误。
catch 语句处理错误。
throw 语句创建自定义错误。
<hr>
1.在下面的例子中,我们故意在 try 块的代码中写了一个错字。catch 块会捕捉到 try 块中的错误,并执行代码来处理它。
<script type="text/javascript">
var msg="";
function demo1(){
try{
//alert("Welcome!");
aaaaaaaaalert("Welcome!");
}catch(err){
msg+="错误提示:\n\n";
alert(msg+err.message);
}
}
</script>
<input type="button" οnclick="demo1();" value="查看消息"/>
<hr>
2.Throw 语句
throw 语句允许我们创建自定义错误。正确的技术术语是:创建或抛出异常(exception)。如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。异常可以是 JavaScript 字符串、数字、逻辑值或对象。
本例检测输入变量的值。如果值是错误的,会抛出一个异常(错误)。catch 会捕捉到这个错误,并显示一段自定义的错误消息:
<hr>
<script type="text/javascript">
function demo2(){
try{
var x=document.getElementById("demo3").value;
if(x=="") throw "值为空";
if(isNaN(x)) throw "值非数字!";
if(x>10) throw "值太大";
if(x<5) throw "值太小";
}catch(err){
var p=document.getElementById("tip2");
p.innerHTML="错误:"+err+"!";
}
}
</script>
<p>请输入5到10之间的数字:</p>
<input id="demo3" type="text"/>
<input type="button" value="点击检查" οnclick="demo2()"/>
<p id="tip2"></p>
<hr>
</body>
</html>