首页 > 代码库 > JS函数实现金额小写转大写
JS函数实现金额小写转大写
止乎于分享!
1 ///<summery>小写金额转化大写金额</summery> 2 function AmountLtoU(amount) { 3 if (isNaN(amount) || amount >= 1000000000000) return "无效金额!"; //数值最大不超过1万亿 4 var sPrefix = amount < 0 ? "(负)" : ""; //将负号‘-’显示成汉字‘(负)’ 5 var sAmount = Math.abs(amount).toFixed(2); //格式化成两位小数格式(两位小数对应“‘角”和“分”) 6 var sUnit = ‘仟佰拾亿仟佰拾万仟佰拾元角分‘; //14个权位单位 7 var sCapital = ‘零壹贰叁肆伍陆柒捌玖‘; //10个大写数字 8 sAmount = sAmount.replace(".", ""); //去除小数点(使数字与权位对应) 9 sUnit = sUnit.substr(sUnit.length - sAmount.length); //截取权位10 var sOutput = ""; 11 for (var i = 0, len = sAmount.length; i < len; i++) { //拼接数字与权位单位12 sOutput += sCapital.substr(sAmount.substr(i, 1), 1) + sUnit.substr(i, 1);13 } 14 return sPrefix + sOutput.replace(/零角零分$/, ‘整‘).replace(/零[仟佰拾]/g, ‘零‘).replace(/零{2,}/g, ‘零‘)15 .replace(/零([亿|万])/g, ‘$1‘).replace(/零+元/, ‘元‘).replace(/亿零{0,3}万/, ‘亿‘).replace(/^元/, "零元");16 };
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。