zoukankan      html  css  js  c++  java
  • js 将阿拉伯数字翻译成中文的大写数字


    //将阿拉伯数字翻译成中文的大写数字
    function moneyToCapital(sourceId,targetId)  
    {
      var source=document.getElementById(sourceId);
      var target=document.getElementById(targetId);
      var num=source.value;
      
       if(!/^d*(.d*)?$/.test(num)) throw(new Error(-1, "Number is wrong!"));
     
       var AA = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
       var BB = new Array("","拾","佰","仟","?","?","圆","");
       var CC = new Array("角", "分", "厘");
        
       var a = (""+ num).replace(/(^0*)/g, "").split("."), k = 0, re = "";
     
       for(var i=a[0].length-1; i>=0; i--) //author: meizz
       {
       switch(k)
       {
       case 0 : re = BB[7] + re; break;
       case 4 : if(!new RegExp("0{4}\d{"+ (a[0].length-i-1) +"}$").test(a[0]))
       re = BB[4] + re; break;
       case 8 : re = BB[5] + re; BB[7] = BB[5]; k = 0; break;
       }
       if(k%4 == 2 && a[0].charAt(i)=="0" && a[0].charAt(i+2) != "0") re = AA[0] + re;
       if(a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k%4] + re; k++;
       }
     
       if(a.length>1) //加上小数部分(如果有小数部分)
       {
       re += BB[6];
       for(var i=0; i<a[1].length; i++)
       {
       re += AA[a[1].charAt(i)] + CC[i];
       if(i==2) break;
       }
       }
       // return re;
      target.value= re ;
    }

  • 相关阅读:
    学习进度第七周
    NABCD---生活日历
    学习进度第六周
    人月神话阅读笔记(3)
    人月神话阅读笔记(2)
    人月神话阅读笔记(1)
    石家庄地铁查询(双人项目)
    学习进度第五周
    学习进度第四周
    返回一个整数数组中最大子数组的和。(续2)---二维数组
  • 原文地址:https://www.cnblogs.com/anuoruibo/p/3404943.html
Copyright © 2011-2022 走看看