function test(low) {
var a = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","久");
var b = new Array("元","拾","百","千","万");
var c = new Array("角", "分");
high = "";
var s = low.split(".");
for(var i=0;i<s[0].length;i++) {
high += a[s[0].charAt(i)] + b[s[0].length-1-i];
}
if(s[1].length>0) {
var l = s[1].length>2 ? 2: s[1].length;
for(var j=0;j<l;j++) {
high += a[s[0].charAt(j)] + c[j];
}
}
return high;
}/****/
var t = test('123.45');
alert(t);
var a = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","久");
var b = new Array("元","拾","百","千","万");
var c = new Array("角", "分");
high = "";
var s = low.split(".");
for(var i=0;i<s[0].length;i++) {
high += a[s[0].charAt(i)] + b[s[0].length-1-i];
}
if(s[1].length>0) {
var l = s[1].length>2 ? 2: s[1].length;
for(var j=0;j<l;j++) {
high += a[s[0].charAt(j)] + c[j];
}
}
return high;
}/****/
var t = test('123.45');
alert(t);
function DX(n) {
var strOutput = "";
var strUnit = '千百拾亿千百拾万千百拾元角分';
n += "00";
var intPos = n.indexOf('.');
if (intPos >= 0)
n = n.substring(0, intPos) + n.substr(intPos + 1, 2);
strUnit = strUnit.substr(strUnit.length - n.length);
for (var i=0; i < n.length; i++)
strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(n.substr(i,1),1) + strUnit.substr(i,1);
return strOutput;
}
alert(DX(1056002304.03));
</script>
壹undefined零undefined零undefined零undefined贰undefined零万零千零百零拾叁元壹角零分
出错!!gjd111686(数字金刚) 的代码 DX("1000200003.456789"):
壹拾零亿零千零百贰拾零万零千零百零拾叁元肆角伍分
- ------- - ------------
多出很多没有必要的东西
{
if(!/^\d*(\.\d*)?$/.test(num)){alert("Number is wrong!"); return false;} 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+2) != 0 && a[0].charAt(i+1) == 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++)
{
if(i>2) break;
re += AA[a[1].charAt(i)] + CC[i];
}
}
return re;
}
alert(Chinese("1000200003.456789"))