读书人

两个关于JS的有关问题

发布时间: 2012-08-01 17:53:40 作者: rapoo

两个关于JS的问题

JScript code
<html><body><script type="text/javascript">var x=prompt("请输入 0 至 10 之间的数:","")try{ if(x>10)   throw "Err1" else if(x<0)  throw "Err2"else if(isNaN(x))  throw "Err3"} catch(er){if(er=="Err1")   alert("错误!该值太大!")if(er == "Err2")   alert("错误!该值太小!") if(er == "Err3")   alert("错误!该值不是数字!") }</script></body></html>

1.这段代码,当在框中不输入任何东西直接确认的时候不报错?


2、catch(er)和catch(err)是等价的么?

[解决办法]
试了一下,不输入是没有报错的,但最好做一个空验证!
两个异常肯定不是等价的,是有区别的
er针对的异常比err多一些
[解决办法]
因为当你不输入的时候x为空!这样改就可以了:
else if(isNaN(x)||x=="")
throw "Err3";

读书人网 >Java Web开发

热点推荐