>  Q&A  >  본문

아주 간단한 금액이 대문자로 변환됩니다.


<!doctype html>

<html>

<head>

<meta charset="UTF-8" />

<title>대문자로 변환된 양</title>

</head>

<body>

<div>

<h2>대문자로 변환된 금액</h2>

<lable for="amount">금액을 입력하세요. ¥< ;/lable>

<input id="amount" type="text" />

<p></p>

<button onclick="change()">클릭 변환하려면</button>

<p id="demo"></p>

</div>

<script type="text/javascript">

함수 변경(){

var Money=document.getElementById("amount").value;

document.getElementById("demo").innerHTML =toCapitalization(money);

}

function toCapitalization(money){

var capitalization="";

    var unitInt="整";

if(isAmount(money)){

if(money= =parseInt(money)){

var l=getlength(money);

if(l>=10){

capitalization="您输入的金额过大!";

}else{

capitalization= getCap(money,l,0,l)+unitInt;

}

}else{

var mPstr=money+"";

            var m=mPstr.split(".");

            var mPInt=m [0];

            var mPPoint=m[1];

            var len=mPPoint.length;

            var numI=parseInt(mPInt);

            var numP =parseInt(mPPoint);

            대문자=getCap(numI ,getlength(numI),0,len)

            +getCap(numP,getlength(numP),1,len);

}

}else{

capitalization="请输入正确的金额!";

}

return capitalization;

}

function getlength(num){

var str=num+"";

return str.length;

}

function isAmount(num){

var ret=/ ^(([1-9][0-9]*)|((([0])|([1-9][0-9]*)).(([1-9])|([ 0-9][1-9])))|([0]))$/;

if(ret.test(num)){

return true;

}else{

return false;

}

}

function gerArray(num,l,k,len){

var nums=[];

if(k==1 && l!=len){

nums[0]=0 ;

nums[1]=num;

}else{

for(i=1;i<=l;i++){

nums[l-i]=num%10;

if(l-i> 0){

num=(num-nums[l-i])/10;

}

}

}

return nums;

}

function getUnit(i,k){

//k =0 表示整数부분 k=1부분 부분 k=1부분 부분

var unit=["圆","拾","佰","仟","万","拾","佰","仟","亿"];

    var unitPoint=["角","分"];

    if(i<9 && k==0){

     반환 단위[i];

    }else if(i<2 && k==1){

     return unitPoint[i];

    }

}

function getNumber(i){

    var capitalization=["零","壹","贰","叁" ,"肆","伍","陆","柒","捌","玖"];

대문자 반환[i];

}

function getCap(num,l,k,len) {

var nums=gerArray(num,l,k,len);

var str='';

if(k==0){

for(i=0;i<l;i++){

str=str+getNumber(nums[i])+getUnit(l-i-1,k);

}

}else{

for(i=0;i<len;i++){

str=str +getNumber(nums[i])+getUnit(i,k);

}

}

return str;

}

</script>

</body>

</html> ;

邓1820일 전1157

모든 응답(0)나는 대답할 것이다

답장 없음
  • 취소회신하다