如何将十进制数转换成中文大写数字?
- 内容介绍
- 文章标签
- 相关推荐
本文共计274个文字,预计阅读时间需要2分钟。
javascript/** * 数字转中文大写 * @param {Number} n 数字 * @return {String} 返回中文大写数字 */function NumberConvert(n) { if (!/^(\d{1,9}(\.\d+)?|0(\.\d+)?)$/.test(n)) { return 数据非法; } var unit=千百十亿千百十; n=n.toString().replace(/[^0-9.]+/g, ''); var z, r; if (n[0]=='0') { z=0; } else { z=parseInt(n[0], 10) - 1; r=n[0]; } n=n.substr(1); if (n=='') { return unit.substr(2 * z); } var p=''; var q=''; var m=0; for (var i=0; i 0) { p=unit.substr(2 * m); } m=0; } if (i==n.length - 1) { p +=unit.substr(2 * z); } m++; } return p;}
DecimalToChinese.js/** * 小写数字转中文大写 * @param Number n为数字 * @return String 返回中文大写数字 */ function NumberConver(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)){ return "数据非法"; } var unit = "千百拾亿千百拾万千百拾元角分", str = ""; n += "00"; var p = n.indexOf('.'); if (p >= 0){ n = n.substring(0, p) + n.substr(p + 1, 2); } unit = unit.substr(unit.length - n.length); for (var i = 0; i < n.length; i++){ str += '零壹贰叁肆伍陆柒捌玖'.charAt(n.charAt(i)) + unit.charAt(i); return str.replace(/零(千|百|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元整"); } }
本文共计274个文字,预计阅读时间需要2分钟。
javascript/** * 数字转中文大写 * @param {Number} n 数字 * @return {String} 返回中文大写数字 */function NumberConvert(n) { if (!/^(\d{1,9}(\.\d+)?|0(\.\d+)?)$/.test(n)) { return 数据非法; } var unit=千百十亿千百十; n=n.toString().replace(/[^0-9.]+/g, ''); var z, r; if (n[0]=='0') { z=0; } else { z=parseInt(n[0], 10) - 1; r=n[0]; } n=n.substr(1); if (n=='') { return unit.substr(2 * z); } var p=''; var q=''; var m=0; for (var i=0; i 0) { p=unit.substr(2 * m); } m=0; } if (i==n.length - 1) { p +=unit.substr(2 * z); } m++; } return p;}
DecimalToChinese.js/** * 小写数字转中文大写 * @param Number n为数字 * @return String 返回中文大写数字 */ function NumberConver(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)){ return "数据非法"; } var unit = "千百拾亿千百拾万千百拾元角分", str = ""; n += "00"; var p = n.indexOf('.'); if (p >= 0){ n = n.substring(0, p) + n.substr(p + 1, 2); } unit = unit.substr(unit.length - n.length); for (var i = 0; i < n.length; i++){ str += '零壹贰叁肆伍陆柒捌玖'.charAt(n.charAt(i)) + unit.charAt(i); return str.replace(/零(千|百|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元整"); } }

