1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
function toChinaNumber (options) {
options=options+"";
options = options.replace(/^0+/, "");
var numberAry = ["零","壹","贰","叁","肆","伍","陆","柒","捌","玖"],
unitAry = ["","拾","佰","仟"],
bigUnitAry = ["","万","亿"];
var targetStr = "";
var zeroFlag = 0;
var i, p, nowAloneNumber;
var quotient, modulus;
var len=options.length;
if(len==0){
targetStr += "零";
}else{
for (i = 0; i < len; i++) {
p = len - i - 1;
nowAloneNumber = options.substr(i, 1);
quotient = p / 4;//商
modulus = p % 4;//余数
if (nowAloneNumber == "0") {
zeroFlag++;
} else {
if (zeroFlag > 0) {
targetStr += numberAry[0];
}
zeroFlag = 0;
targetStr += numberAry[Number(nowAloneNumber)] + unitAry[modulus];
}
if (modulus == 0 && zeroFlag < 4) {
targetStr += bigUnitAry[quotient];
zeroFlag = 0;
}
}
}
targetStr += "元整";
return targetStr;
}
var testNumber=35987;
var testStr="298";
console.log(toChinaNumber(testNumber));
console.log(toChinaNumber(testStr));
|