`
MauerSu
  • 浏览: 526260 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JS实现数字转换为货币汉字大写数字的方法详解

 
阅读更多

源:http://blog.csdn.net/REBELASDF/article/details/5874190

评:

    function Chinese(num){    
        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--){    
            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;    
            }  
            if(a[1].charAt(0)=="0" && a[1].charAt(1)=="0"){ 
                re+="元整"; 
            }   
        }else{ 
            re+="元整"; 
        }    
        return re;    
    } 

分享到:
评论

相关推荐

    javascript将数字转换整数金额大写的方法.docx

    为了实现数字到中文大写金额的转换,我们需要定义两个基本数组:`digit` 和 `unit`。其中,`digit` 用于表示数字0到9对应的中文大写形式,而 `unit` 则包含了不同级别的单位,如“元”、“万”、“亿”以及个、十、...

    货币大写金额转换插件ChinaNumToEnglishNum.js

    ChinaNumToEnglishNum.js就是利用JavaScript的字符串处理和逻辑控制能力,实现了将0-9这十个数字转换为其对应的中文大写表示,例如“零”、“一”到“九”,以及对应的人民币单位如“元”、“角”、“分”。...

    JS案例分享之金额小写转大写

    本文将详细介绍一个具体的JavaScript函数实现——将小写金额数字转换为中文大写形式,并对其中涉及的关键技术和实现细节进行深入剖析。 #### 函数概述 函数名称:`Arabia_to_Chinese` **功能描述**: 该函数接收...

    将rmb数字位钱数转化为中文钱数的js函数

    本文将详细介绍一个JavaScript函数,用于将人民币(RMB)的数字形式转换为中文大写。 函数名为`ChangeRMBToCH`,其主要功能是接收一个包含逗号和可能的人民币符号(¥)的字符串,如"168,076,0.86",并将其转换为...

    详解VUE2.X过滤器的使用方法

    在 Vue 2.x 版本中,过滤器用于格式化数据,比如日期、货币或者像上面例子中那样将特定字符串转换为中文描述。在本文中,我们将深入探讨 Vue 2.x 过滤器的使用方法。 首先,让我们了解如何定义一个过滤器。在 Vue ...

Global site tag (gtag.js) - Google Analytics