JS里的捕获异常和其他语言几乎是一样的,也是用的try、throw和catch
用一个例子来说明一下:
<script type="text/javascript">
window.οnlοad=initAll;
function initAll()
{
var ans=prompt("Enter a number!","");
try{
if (!ans||isNaN(ans)||ans<0)
{
throw new Error("not a number!!!");
}
alert("the square root of "+ans +" is " +Math.sqrt(ans));
}
catch(errMsg){
alert(errMsg.message);
}
}
</script>
用 throw 抛出错误,然后JavaScript跳出 try 块,并寻找相应的 catch 语句。try 块中其余代码都被跳过。
这里用 prompt 弹出询问对话框,让用户输入一个数字: 如图
点击确定,结果如下:
那如果输入的不是整数呢或者整数小于0呢??? 重点来了!!
结果显示::