数字金额转化为汉字大写金额
来源:互联网 发布:从哪里查淘宝消费总额 编辑:程序博客网 时间:2024/05/18 09:09
代码:
function numberToChinese(number) { /*本方法:数字金额转化为汉字大写金额; *支持最大整数兆(万亿); *支持小数后四位(毫); */ var Chinese = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']; var ChineseInteger = ['', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟', '兆']; var ChineseDecimal = ['角', '分', '厘', '毫']; var resultInteger = '', resultDecimal = '', resultNegative = ''; number = isNaN(number) ? 0 : number; //校验数字格式 var numStr = number.toString(); //转化为字符串 //定义数组 获取整数部分======================== var arrInteger = numStr.split('.')[0]; if (!arrInteger || arrInteger == '0') { resultInteger += '零元'; } else { if (arrInteger.length > 13) { arrInteger = arrInteger.substr( - 13); } //整数部分 数字转化对应汉字 var numInteger = arrInteger.split(''); var IntegerData = new Array(); for (var i in numInteger) { for (var i2 in Chinese) { if (numInteger[i] == i2) { IntegerData.push(Chinese[i2]); } if (numInteger[i] == '-') { resultNegative = '负'; } } } IntegerData.reverse(); //整数部分 数组拼接 for (var i in IntegerData) { for (var i2 in ChineseInteger) { if (i == i2) { IntegerData[i] = IntegerData[i] + ChineseInteger[i]; } } } IntegerData.reverse(); for (var i in IntegerData) { resultInteger += IntegerData[i]; } resultInteger += '元'; } //定义数组 获取小数部分========================= var arrDecimal = numStr.split('.')[1]; if (arrDecimal) { if (arrDecimal.length > 4) { arrDecimal = arrDecimal.substr(0, 4); } //小数部分 数字转化对应汉字 var numDecimal = arrDecimal.split(''); var DecimalData = new Array(); for (var i in numDecimal) { for (var i2 in Chinese) { if (numDecimal[i] == i2) { DecimalData.push(Chinese[i2]); } } } //小数部分 数组拼接 for (var i in DecimalData) { for (var i2 in ChineseDecimal) { if (i == i2) { DecimalData[i] = DecimalData[i] + ChineseDecimal[i]; } } } for (var i in DecimalData) { resultDecimal += DecimalData[i]; } } //整数部分+小数部分 拼接返回 return resultNegative + resultInteger + resultDecimal;}
var data = 12345;console.log(numberToChinese(data));//结果:壹万贰仟叁佰肆拾伍元var data = 12345.12345;console.log(numberToChinese(data));//结果:壹万贰仟叁佰肆拾伍元壹角贰分叁厘肆毫var data = 0;console.log(numberToChinese(data));//结果:零元var data = 0.234;console.log(numberToChinese(data));//结果:零元贰角叁分肆厘var data = -345.89;console.log(numberToChinese(data));//结果:负叁佰肆拾伍元捌角玖分var data = -10004.89;console.log(numberToChinese(data));//结果:负壹万零仟零佰零拾肆元捌角玖分var data = 50000;console.log(numberToChinese(data));//结果:伍万零仟零佰零拾零元var data = 50000.0004;console.log(numberToChinese(data));//结果:伍万零仟零佰零拾零元
0 0
- 数字金额转化为汉字大写金额
- 将数字金额转化为汉字大写
- 数字金额转化为大写金额
- 把数字金额转化为汉字金额
- 数字转化为汉字金额
- Javascript 数字金额 转换为 大写汉字金额
- 将金额数字转换为汉字大写金额
- 数字金额转化为中文大写
- Oracle中将数字金额转化为大写
- JavaScript 动态将数字金额转化为中文大写金额
- 金额的大写方法_把数字转化为人民币的大写汉字
- 数字转汉字大写金额
- 中文大写数字/金额转化
- 替换数字金额为大写金额
- 替换数字金额为大写金额
- 替换数字金额为大写金额
- Java数字金额转换为大写金额
- 小写金额转化为大写
- Scala深入浅出进阶经典 第53讲:Scala中结构类型实战详解
- 12864无字库液晶显示(一)
- 欢聚时代笔试题,滴滴出行编程题
- 代码风格的问题
- 点击 li 弹出其 index
- 数字金额转化为汉字大写金额
- Scala深入浅出进阶经典 第54讲:Scala中复合类型实战详解
- -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable a
- Scala深入浅出进阶经典 第55讲:Scala中Infix Type实战详解
- JavaScript高级程序设计之基本概念之关键字和保留字 第3.2讲笔记
- noip2010 三国游戏 (博弈论)
- C和指针 (学习之旅)
- CodeVS1428 棋盘制作
- Scala深入浅出进阶经典 第56讲:Scala中Self Types实战详解