<!DOCTYPE?html><html?lang="en"><head>????<meta?charset="UTF-8">????<meta?name="viewport"?content="width=device-width,?initial-scale=1.0">????<title>數(shù)字金額轉(zhuǎn)大寫金額</title></head><body>????<!--?<INPUT?id=Digits?name=Digits?size="15"?value="1000001"?>?<INPUT?id=Convert?onclick="Result.value?=?convertCurrency(Digits.value);"?type=button?value=Convert?name=Convert?height="185659256">?<INPUT?id=Result?size=30?name=Result?>?--></body><script???language="javascript">????//???數(shù)字轉(zhuǎn)換成大寫金額函數(shù)????function???atoc(numberValue){????????????var???numberValue=new???String(Math.round(numberValue*100));???//???數(shù)字金額????????????var???chineseValue="";?????????????????????//???轉(zhuǎn)換后的漢字金額????????????var???String1???=???"零壹貳叁肆伍陸柒捌玖";???????????????//???漢字數(shù)字????????????var???String2???=???"萬仟佰拾億仟佰拾萬仟佰拾元角分";???????????//???對應(yīng)單位????????????var???len=numberValue.length;???????????????????//???numberValue???的字符串長度????????????var???Ch1;???????????????????????????//???數(shù)字的漢語讀法????????????var???Ch2;???????????????????????????//???數(shù)字位的漢字讀法????????????var???nZero=0;?????????????????????????//???用來計算連續(xù)的零值的個數(shù)????????????var???String3;?????????????????????????//???指定位置的數(shù)值????????????if(len>15){????????????????????alert("超出計算范圍");????????????????????return???"";????????????}????????????if???(numberValue==0){????????????????????chineseValue???=???"零元整";????????????????????return???chineseValue;????????????}????????????String2???=???String2.substr(String2.length-len,???len);???????//???取出對應(yīng)位數(shù)的STRING2的值????????????for(var???i=0;???i<len;???i++){????????????????????String3???=???parseInt(numberValue.substr(i,???1),10);???????//???取出需轉(zhuǎn)換的某一位的值????????????????????if???(???i???!=???(len???-???3)???&&???i???!=???(len???-???7)???&&???i???!=???(len???-???11)???&&???i???!=(len???-???15)???){????????????????????????????if???(???String3???==???0???){????????????????????????????????????Ch1???=???"";????????????????????????????????????Ch2???=???"";????????????????????????????????????nZero???=???nZero???+???1;????????????????????????????}????????????????????????????else???if???(???String3???!=???0???&&???nZero???!=???0???){????????????????????????????????????Ch1???=???"零"???+???String1.substr(String3,???1);????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????????????nZero???=???0;????????????????????????????}????????????????????????????else{????????????????????????????????????Ch1???=???String1.substr(String3,???1);????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????????????nZero???=???0;????????????????????????????}????????????????????}????????????????????else{?????????????????????????????//???該位是萬億疹吃,億轻猖,萬,元位等關(guān)鍵位????????????????????????????if(???String3???!=???0???&&???nZero???!=???0???){????????????????????????????????????Ch1???=???"零"???+???String1.substr(String3,???1);????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????????????nZero???=???0;????????????????????????????}????????????????????????????else???if???(???String3???!=???0???&&???nZero???==???0???){????????????????????????????????????Ch1???=???String1.substr(String3,???1);????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????????????nZero???=???0;????????????????????????????}????????????????????????????else???if(???String3???==???0???&&???nZero???>=???3???){????????????????????????????????????Ch1???=???"";????????????????????????????????????Ch2???=???"";????????????????????????????????????nZero???=???nZero???+???1;????????????????????????????}????????????????????????????else{????????????????????????????????????Ch1???=???"";????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????????????nZero???=???nZero???+???1;????????????????????????????}????????????????????????????if(???i???==???(len???-???11)???||???i???==???(len???-???3)){?????????//???如果該位是億位或元位伴挚,則必須寫上????????????????????????????????????Ch2???=???String2.substr(i,???1);????????????????????????????}????????????????????}????????????????????chineseValue???=???chineseValue???+???Ch1???+???Ch2;????????????}????????????if???(???String3???==???0???){???????????????????????//???最后一位(分)為0時匀伏,加上“整”????????????????????chineseValue???=???chineseValue???+???"整";????????????}????????????return???chineseValue;????}????//-->????</script>????<script>????????????document.write(atoc("23002"));????</script></html>
直接復(fù)制可用