你的位置:首页 > Java教程

[Java教程]实现一个数值加法函数,返回两个数字的和。要求能进行参数验证,若参数不是数字或为空则抛出异常。


<body>

<script type="text/javascript">
function Sum(arg1,arg2){ //数值加法函数
var sarg1 = new String(arg1); //将传入的参数转为字符串以便进行参数检查
var sarg2 = new String(arg2); //将参数2转为字符类型
if( (sarg1=="")||(sarg2=="") ) //确保参数不为空
{
var e0 = new Error(); //当有参数为空则抛出异常
e0.Serial = 1000001; //错误编号
if( sarg1=="" ) //根据为空的参数正确填写错误信息
{
e0.message = "Sum函数参数非法:第1个参数为空!"; //错误描述信息
}
else
{
e0.message = "Sum函数参数非法:第2个参数为空!";
}
throw e0; //抛出错误信息
}
for(i=0;i<sarg1.length;i++){ //参数合法性检查
for(j=0;j<10;j++){ //检查所有字符
if(sarg1.charAt(i)==j) //若不是数字则抛出错误信息
{
break; //跳出循环
}
else
{
if(j==9) //当已经查询到数字9时
{
var e1 = new Error(); //错误信息对象
e1.Serial = 1000001; //错误编号
e1.message = "Sum函数参数:" + sarg1 + "是非法数字!"; //错误描述信息
throw e1;
}
}
}
}
for( k=0;k<sarg2.length;k++ ) //检查参数2是数字
{
for(l=0;l<10;l++){ //从0到9逐一比较
if(sarg2.charAt(k)==l) //如果是0~9的数字
{
break;
}
else
{
if(l==9) //只有包含非数字则抛出错误信息
{
var e2 = new Error(); //创建错误对象
e2.Serial = 1000001; //异常编号
e2.message = "Sum函数参数:" + sarg2 + "是非法数字!";
throw e2;
}
}
}
}
return Number(arg1) + Number(arg2); //参数都正确则返回两个值得和
}
function Button1_onclick(){ //“计算”按钮的单机事件处理程序
try{
var Text1 = document.getElementById("Text1");
var Text2 = document.getElementById("Text2");
var Text3 = document.getElementById("Text3");
var sum = Sum(Text1.value,Text2.value); //调用函数进行计算

Text3.value = sum; //输出计算结果
}
catch(e){ //有错误发生则输出错误信息
alert(e.message); //输出异常中的信息
if(e.Serail == 1000001) //如果是1000001号错误
{
alert(e.message);
e = null;
}
}
}
</script>

<input type="text" id="Text1" maxlength="20"/>
+
<input type="text" id="Text2" maxlength="20"/>
=
<input type="text" id="Text3" >
<input type="button" id="Button1" value="计算" onclick="return Button1_onclick()" />
</body>