JS中手動把數字貨幣轉化爲中文大寫方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>數字貨幣到中文貨幣的轉換</title>
<script language="javascript">
	function convert(){
		var num = document.getElementById("num").value;
		if(num > 1000000000000000000) {
			alert("您輸入的數字太大,重新輸入!");
			return;
		}
		var monee = Math.round(num*100).toString(10)
		var i,j;
		j=0;
		var leng = monee.length;
		var monval="";
		for( i=0;i<leng;i++)
		{
		monval= monval+to_upper(monee.charAt(i))+to_mon(leng-i-1);
		}
		repace_acc(monval);
	}
	function to_upper( a){
		switch(a){
		case '0' : return '零'; break;
		case '1' : return '壹'; break;
		case '2' : return '貳'; break;
		case '3' : return '叄'; break;
		case '4' : return '肆'; break;
		case '5' : return '伍'; break;
		case '6' : return '陸'; break;
		case '7' : return '柒'; break;
		case '8' : return '捌'; break;
		case '9' : return '玖'; break;
		default: return '' ;
		}
	}
	function to_mon(a){
		if(a>10){ a=a - 8;
		return(to_mon(a));}
		switch(a){
		case 0 : return '分'; break;
		case 1 : return '角'; break;
		case 2 : return '元'; break;
		case 3 : return '拾'; break;
		case 4 : return '佰'; break;
		case 5 : return '仟'; break;
		case 6 : return '萬'; break;
		case 7 : return '拾'; break;
		case 8 : return '佰'; break;
		case 9 : return '仟'; break;
		case 10 : return '億'; break;
		}
	}
	function repace_acc(Money){
		Money=Money.replace("零分","");
		Money=Money.replace("零角","零");
		var yy;
		
		var outmoney=Money;
		yy=0;
		while(true){
		var lett= outmoney.length;
		outmoney= outmoney.replace("零元","元");
		outmoney= outmoney.replace("零萬","萬");
		outmoney= outmoney.replace("零億","億");
		outmoney= outmoney.replace("零仟","零");
		outmoney= outmoney.replace("零佰","零");
		outmoney= outmoney.replace("零零","零");
		outmoney= outmoney.replace("零拾","零");
		outmoney= outmoney.replace("億萬","億零");
		outmoney= outmoney.replace("萬仟","萬零");
		outmoney= outmoney.replace("仟佰","仟零");
		yy= outmoney.length;
		if(yy==lett) break;
		}
		yy = outmoney.length;
		if ( outmoney.charAt(yy-1)=='零'){
		outmoney=outmoney.substring(0,yy-1);
		}
		yy = outmoney.length;
		if ( outmoney.charAt(yy-1)=='元'){
		outmoney=outmoney +'整';
		}
		
		alert("中文貨幣:"+outmoney);
	}
</script>
</head>

<body>
<form>
  數字貨幣:<input type="text" id="num" name="num" value="136.65">
  <input type="button" value="轉換" onclick="convert()"><br/>
</form>
</body>
</html>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章