您的位置:首页 > 其它

金钱小写转换为大写

2012-07-13 09:09 190 查看
/** 数字金额大写转换(可以处理整数,小数,负数) */


02
function
upDigit(n)
03
{
04
var

fraction = [
'角'
,
'分'
];
05
var

digit = [
'零'
,
'壹'
,
'贰'
,
'叁'
,
'肆'
,
'伍'
,
'陆'
,
'柒'
,
'捌'
,
'玖'
];
06
var

unit = [ [
'元'
,
'万'
,
'亿'
],[
''
,
'拾'
,
'佰'
,
'仟'
]];
07
var

head = n < 0?
'欠'
:
''
;
08
n = Math.abs(n);
09
 
10
var

s =
''
;
11
 
12
for

(
var

i = 0; i < fraction.length; i++)
13
{

14
s += (digit[Math.floor(n * 10 * Math.pow(10,i)) % 10] + fraction[i]).replace(/零./,
''
);
15
}

16
s =s || 

'整'
;
17
n = Math.floor(n);
18
 
19
for

(
var

i = 0; i < unit[0].length && n > 0; i++)
20
{

21
var

p =
''
;
22
for

(
var

j = 0; j < unit[1].length && n > 0; j++)
23
{

24
p =digit[n % 10] + unit[1][j] + p;
25
n = Math.floor(n / 10);
26
}

27
s =p.replace(/(零.)*零$/,
''
).replace(/^$/,
'零'
)+ unit[0][i] + s;
28
}

29
return

head + s.replace(/(零.)*零元/,
'元'
).replace(/(零.)+/g,
'零'
).replace(/^整$/,

'零元整'
);
30
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: