javascript實(shí)現(xiàn)一個(gè)數(shù)值加法函數(shù)
廢話(huà)不多說(shuō),直接奉上代碼
JS
<script type="text/javascript">
function Sum(arg1,arg2){ //數(shù)值加法函數(shù)
var sarg1 = new String(arg1); //將傳入的參數(shù)轉(zhuǎn)為字符串以便進(jìn)行參數(shù)檢查
var sarg2 = new String(arg2); //將參數(shù)2轉(zhuǎn)為字符類(lèi)型
if( (sarg1=="")||(sarg2=="") ) //確保參數(shù)不為空
{
var e0 = new Error(); //當(dāng)有參數(shù)為空則拋出異常
e0.Serial = 1000001; //錯(cuò)誤編號(hào)
if( sarg1=="" ) //根據(jù)為空的參數(shù)正確填寫(xiě)錯(cuò)誤信息
{
e0.message = "Sum函數(shù)參數(shù)非法:第1個(gè)參數(shù)為空!"; //錯(cuò)誤描述信息
}
else
{
e0.message = "Sum函數(shù)參數(shù)非法:第2個(gè)參數(shù)為空!";
}
throw e0; //拋出錯(cuò)誤信息
}
for(i=0;i<sarg1.length;i++){ //參數(shù)合法性檢查
for(j=0;j<10;j++){ //檢查所有字符
if(sarg1.charAt(i)==j) //若不是數(shù)字則拋出錯(cuò)誤信息
{
break; //跳出循環(huán)
}
else
{
if(j==9) //當(dāng)已經(jīng)查詢(xún)到數(shù)字9時(shí)
{
var e1 = new Error(); //錯(cuò)誤信息對(duì)象
e1.Serial = 1000001; //錯(cuò)誤編號(hào)
e1.message = "Sum函數(shù)參數(shù):" + sarg1 + "是非法數(shù)字!"; //錯(cuò)誤描述信息
throw e1;
}
}
}
}
for( k=0;k<sarg2.length;k++ ) //檢查參數(shù)2是數(shù)字
{
for(l=0;l<10;l++){ //從0到9逐一比較
if(sarg2.charAt(k)==l) //如果是0~9的數(shù)字
{
break;
}
else
{
if(l==9) //只有包含非數(shù)字則拋出錯(cuò)誤信息
{
var e2 = new Error(); //創(chuàng)建錯(cuò)誤對(duì)象
e2.Serial = 1000001; //異常編號(hào)
e2.message = "Sum函數(shù)參數(shù):" + sarg2 + "是非法數(shù)字!";
throw e2;
}
}
}
}
return Number(arg1) + Number(arg2); //參數(shù)都正確則返回兩個(gè)值得和
}
function Button1_onclick(){ //“計(jì)算”按鈕的單機(jī)事件處理程序
try{
var Text1 = document.getElementById("Text1");
var Text2 = document.getElementById("Text2");
var Text3 = document.getElementById("Text3");
var sum = Sum(Text1.value,Text2.value); //調(diào)用函數(shù)進(jìn)行計(jì)算
Text3.value = sum; //輸出計(jì)算結(jié)果
}
catch(e){ //有錯(cuò)誤發(fā)生則輸出錯(cuò)誤信息
alert(e.message); //輸出異常中的信息
if(e.Serail == 1000001) //如果是1000001號(hào)錯(cuò)誤
{
alert(e.message);
e = null;
}
}
}
</script>
HTML:
<input type="text" id="Text1" style="width:84px" maxlength="20"/> + <input type="text" id="Text2" style="width:75px" maxlength="20"/> = <input type="text" id="Text3" style="width:69px"> <input type="button" id="Button1" value="計(jì)算" onclick="return Button1_onclick()" />
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
淺談函數(shù)調(diào)用的不同方式,以及this的指向
下面小編就為大家?guī)?lái)一篇淺談函數(shù)調(diào)用的不同方式,以及this的指向。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
JS 數(shù)字轉(zhuǎn)換為大寫(xiě)金額的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇JS 數(shù)字轉(zhuǎn)換為大寫(xiě)金額的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
JS基于FileSystemObject創(chuàng)建一個(gè)指定路徑的TXT文本文件
這篇文章主要介紹了JS基于FileSystemObject創(chuàng)建一個(gè)指定路徑的TXT文本文件,涉及javascript使用ActiveXObject控件中FileSystemObject對(duì)象模型的基本技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
網(wǎng)頁(yè)開(kāi)發(fā)中的容易忽略的問(wèn)題 javascript HTML中的table
最近在搞在線(xiàn)電子表格這個(gè)東西,下面的是使用中的一些知識(shí)技巧。2009-04-04
用js代碼和插件實(shí)現(xiàn)wordpress雪花飄落效果的四種方法
這篇文章主要介紹了用js代碼和插件實(shí)現(xiàn)wordpress雪花飄落效果的四種方法,需要的朋友可以參考下2014-12-12
淺談js構(gòu)造函數(shù)的方法與原型prototype
下面小編就為大家?guī)?lái)一篇淺談js構(gòu)造函數(shù)的方法與原型prototype。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-07-07

