阿拉伯数字转中文数字----粗糙版
var nums = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']; function numToChina(num) { var unit = ['十', '百', '千','万']; var numToString = num.toString(); var numLen = numToString.length; var numArr = numToString.split(''); var result = '' if (numLen == 1) { result = nums[num] } else if (numLen == 2 && num < 20) { if(numArr[1] == 0) { result = '十' } result = '十' + nums[Number(numArr[1])] //个位数 } else if (numLen == 2 && num >= 20 && num < 100) { if (numArr[1] == 0) { result = nums[numArr[0]] + '十' } else { result = nums[numArr[0]] + '十' + nums[numArr[1]] } } else if (numLen == 3) { if (numArr[1] == 0 && numArr[2] == 0) { result = nums[numArr[0]] + '百' } else if(numArr[1] != 0 && numArr[2] == 0) { result = nums[numArr[0]] + '百' + nums[numArr[1]] + '十' } else { result = clearZero(numArr[0] , '百') + clearZero(numArr[1] , '十') + nums[numArr[2]] } } else if (numLen == 4) { if (numArr[1] == 0 && numArr[2] == 0 && numArr[3] == 0) { result = nums[numArr[0]] + '千' } else if(numArr[1] != 0 && numArr[2] == 0 && numArr[3] == 0) { result = nums[numArr[0]] + '千' + nums[numArr[1]] + '百' } else if(numArr[1] != 0 && numArr[2] != 0 && numArr[3] == 0) { result = nums[numArr[0]] + '千' + nums[numArr[1]] + '百' + nums[numArr[2]] + '十' } else { result = clearZero([numArr[0]] , '千') + clearZero([numArr[1]] , '百') + clearZero([numArr[2]] , '十') + clearZero([numArr[3]] , '') } } return deleteOtherZero(result) } //去除不必要的零,比如十位数为0,则整个十位数都为零,把单位也省了 function clearZero(val, str) { if(val == 0) { if(str === '') { return '' }else { return '零' } }else { return nums[val] + str } } //去除多余的零 function deleteOtherZero(val) { var flag = /零零/g.test(val); if(flag) { return val.replace(/零零/g, '零') }else { return val } } console.log(numToChina(1020))