const numberToChinese = (num) => {
const texts = { 0: '零', 1: '一', 2: '二', 3: '三', 4: '四', 5: '五', 6: '六', 7: '七', 8: '八', 9: '九' }
const units = ['十', '百', '千', '万']
let res = ''
if (num < 10) {
res = texts[num] || ''
} else {
const numSources = (`${num}`).split('').reverse()
const _length = numSources.length
const numTexts = []
for (let i = 0; i < _length; i++) {
const cur = Number(numSources[i])
if (i >= 1 && cur !== 0) {
numTexts.unshift(units[i - 1])
}
if (i === 0 && cur === 0) {
continue
}
if (cur === 0 && Number(numSources[i - 1]) === 0) {
continue
}
if (i === 1 && num < 20) {
continue
}
numTexts.unshift(numberToChinese(cur))
}
res = numTexts.join('')
}
return res
}
数字转字符串js封装函数
最新推荐文章于 2024-05-31 10:26:40 发布