标签:
function numberToChineseCapital(number) {
if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(number)){
return ‘数字格式不正确!‘;
}
number += ‘00‘;
var unit = ‘千百十亿千百十万千百十元角分‘,
pointIndex = number.indexOf(‘.‘),
chineseCapitalStr = ‘‘;
// 如果有小数,截取整数位和小数位
if (pointIndex !== -1) {
number = number.substring(0, pointIndex) + number.substr(pointIndex + 1, 2);
}
// 根据输入金额的长度匹配对应的单位
unit = unit.substr(unit.length - number.length);
for (var i = 0;i < number.length;i++){
chineseCapitalStr += ‘零壹贰叁肆伍陆柒捌玖‘.charAt(number.charAt(i)) + unit.charAt(i);
}
return chineseCapitalStr
.replace(/零(千|百|拾|角)/g, ‘零‘)
.replace(/(零)+/g, ‘零‘)
.replace(/零(万|亿|元)/g, ‘$1‘)
.replace(/(亿)万|元(拾)/g, ‘$1$2‘).replace(/^元零?|零分/g, ‘‘)
.replace(/元$/g, ‘元整‘);
}
numberToChineseCapital(21324873.23); //"贰千壹百叁十贰万肆千捌百柒十叁元贰角叁分"
标签:
原文地址:http://www.cnblogs.com/happyfreelife/p/5379276.html