龙空技术网

js小写金额转大写金额

你的Maya 108

前言:

此刻同学们对“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}

标签: #js大小写转换 #js字符大小写转换 #js字母转换成小写 #js金额大写