JS将阿拉伯数字转换为汉字
脚本
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
function toChinese(num) { num=Math.floor(num); var chinese=""; var digits=Math.floor(Math.log10(num))+1; var digit=['零','一','二','三','四','五','六','七','八','九']; var times=['','十','百','千','万']; if(digits>=9) { var quotient=Math.floor(num/Math.pow(10,8)); var remainder=num%Math.pow(10,8); var remainderDigits=Math.floor(Math.log10(remainder))+1; return toChinese(quotient)+'亿'+(remainderDigits<8?"零":"")+(remainder>0?toChinese(remainder):""); } //10000 0000 if(digits==1) return digit[num]; if(digits==2) { var quotient=Math.floor(num/10); var remainder=num%10; if(quotient>1) { chinese=digit[quotient]; } chinese=chinese+times[1]; if(remainder>0) { chinese=chinese+digit[remainder]; } return chinese; } if(digits>5) { var quotient=num/Math.pow(10,4); var remainder=num%Math.pow(10,4); var remainderDigits=Math.floor(Math.log10(remainder))+1; return toChinese(quotient)+'万'+(remainderDigits<4?"零":"")+(remainder>0?toChinese(remainder):""); } for(var index=digits;index>=1;index--) { var number=Math.floor(num/Math.pow(10,index-1)%10); //console.log(index+" "+number); if(number>0) { chinese=chinese+digit[number]+times[index-1]; } else { if(index>1) { var nextNumber=Math.floor(num/Math.pow(10,index-2)%10); if(nextNumber>0&&index>1) { chinese=chinese+digit[number]; } } } } return chinese; } console.log(toChinese(12345670)) console.log(toChinese(200000001)) console.log(toChinese(1001)) console.log(toChinese(44004)) |
一千二百三十四万五千六百七十
二亿零一
一千零一
四万四千零四
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现