javascript实现自动转中文大写
[ 2008-4-3 9:44:00 | By: pcasl ]
 

转换大写中文数字
----------------------
转换代码如下:

function Transform()
{
var whole = document.all.num.value;

//分离整数与小数
var num;
var dig;
if(whole.indexOf(".") == -1)
{
num = whole;
dig = "";
}
else
{
num = whole.substr(0,whole.indexOf("."));
dig = whole.substr( whole.indexOf(".")+1, whole.length);
}

//转换整数部分
var i=1;
var len = num.length;

var dw2 = new Array("","","亿");//大单位
var dw1 = new Array("
","","");//小单位
var dw = new Array("","
","","","","","","","","");//整数部分用
var dws = new Array("
","","","","","","","","","");//小数部分用
var k1=0;//
计小单位
var k2=0;//
计大单位
var str="";

for(i=1;i<=len;i++)
{
var n = num.charAt(len-i);
if(n=="0")
{
if(k1!=0)
str = str.substr( 1, str.length-1);
}

str = dw[Number(n)].concat(str);//加数字

if(len-i-1>=0)//在数字范围内
{
if(k1!=3)//
加小单位
{
str = dw1[k1].concat(str);
k1++;
}
else//
不加小单位,加大单位
{
k1=0;
var temp = str.charAt(0);
if(temp=="
" || temp=="亿")//若大单位前没有数字则舍去大单位
str = str.substr( 1, str.length-1);
str = dw2[k2].concat(str);
}
}


if(k1==3)//
小单位到千则大单位进一
{
k2++;
}

}

//转换小数部分
var strdig="";
for(i=0;i<2;i++)
{
var n = dig.charAt(i);
strdig += dws[Number(n)];//
加数字
}

str += "  "+strdig;


document.all.text.value = str;
}

 
 
发表评论:

时 间 记 忆
最 新 评 论
专 题 分 类
最 新 日 志
最 新 留 言
搜 索
用 户 登 录
友 情 连 接
博 客 信 息


Powered by Oblog.