把数字
转换成大写有很多种
方法。这个例子是通过使用js来查看下面的实现代码完成的。
功能changenummoneytochinese(钱){
无功cnnums =新的数组(0
无功cnintradice =新(阵列
无功cnintunits =新(阵列
无功cndecunits =新的数组(角
无功cninteger = ; / /字符后跟整型量
var =cnintlast ; / /后整数单元
无功maxnum = 999999999999999.9999; / /最大
处理数
无功integernum; / /量的整数部分
Var DecimalNum; / /量分数
var =chinesestr ; / /
中文字符串输出量
var部分;与预定义的分离量数组,
如果(金钱= { )
返回;
}
钱= parseFloat(钱);
如果(钱= maxnum){
警报('beyond最大处理数);
返回;
}
如果(货币= 0){
chinesestr = cnnums { 0 } + cnintlast + cninteger;
ChineseStr回来了;
}
金钱=(金钱。toString); / /转换
如果(money.indexof(,)= = 1){
integernum =钱;
decimalnum =;
{人}
部分= money.split(,);
integernum =部分{ 0 };
decimalnum =部分{ 1 }。substr(0, 4);
}
如果(parseInt(integernum,10)> 0){ / /得到的整数部分的转换
无功zerocount = 0;
无功intlen = integernum.length;
对于(var i = 0;i < intlen;i++){
var n = integernum.substr(I,1);
var p = intlen -我- 1;
var = P 4;
var=p=4;
如果(n=0){
zerocount + +;
{人}
如果(zerocount > 0){
chinesestr = cnnums { 0 };
}
ZeroCount = 0; / / return to zero
chinesestr = cnnums { parseInt + cnintradice m(n)} { };
}
如果(M = = 0 zerocount<4){
chinesestr = cnintunits {问};
}
}
chinesestr = cnintlast;
整数处理部分
}
如果(decimalnum!=)
无功declen = decimalnum.length;
对于(var i = 0;i < declen;i++){
var n = decimalnum.substr(I,1);
如果(n)!= 0){
chinesestr = cnnums {编号+ cndecunits {我}(n)};
}
}
}
如果(chinesestr = =){
chinesestr = cnnums { 0 } + cnintlast + cninteger;
如果(decimalnum = =} {)
chinesestr = cninteger;
}
ChineseStr回来了;
}