前言:
此刻同学们对“js大小写转换”可能比较注意,各位老铁们都需要分析一些“js大小写转换”的相关文章。那么小编在网摘上网罗了一些对于“js大小写转换””的相关知识,希望同学们能喜欢,同学们快快来了解一下吧!//金额大写export function getAmountChinese(val) { const amount = +val if (Number.isNaN(amount) || amount < 0) return '' const NUMBER = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'] const N_UNIT1 = ['', '拾', '佰', '仟'] const N_UNIT2 = ['', '万', '亿'] const D_UNIT = ['角', '分', '厘', '毫'] let [integer, decimal] = amount.toString().split('.') if (integer && integer.length > 12) return '金额过大无法计算' let res = '' // 整数部分 if (integer) { for (let i = 0, len = integer.length; i < len; i++) { const num = integer.charAt(i) const pos = len - i - 1 // 排除个位后 所处的索引位置 if (num === '0') { // 当前位 等于 0 且下一位也等于 0 则可跳过计算 if (i === len - 1) { if (integer.length === 1) res += '零' // 0.35 这种情况不可跳过计算 break } if (integer.charAt(i + 1) === '0') continue } res += NUMBER[num] if (parseInt(num)) res += N_UNIT1[(pos) % 4] if (pos % 4 === 0) res += N_UNIT2[Math.floor(pos / 4)] } } res += '圆' // 小数部分 if (parseInt(decimal)) { for (let i = 0; i < 4; i++) { const num = decimal.charAt(i) if (parseInt(num)) res += NUMBER[num] + D_UNIT[i] } } else { res += '整' } return res}
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。