money 小写转换大写

示例代码如下:

function convertCurrency(money) {
//汉字的数字
var cnNums = new Array(‘零‘, ‘壹‘, ‘贰‘, ‘叁‘, ‘肆‘, ‘伍‘, ‘陆‘, ‘柒‘, ‘捌‘, ‘玖‘);
//基本单位
var cnIntRadice = new Array(‘‘, ‘拾‘, ‘佰‘, ‘仟‘);
//对应整数部分扩展单位
var cnIntUnits = new Array(‘‘, ‘万‘, ‘亿‘, ‘兆‘);
//对应小数部分单位
var cnDecUnits = new Array(‘角‘, ‘分‘, ‘毫‘, ‘厘‘);
//整数金额时后面跟的字符
var cnInteger = ‘整‘;
//整型完以后的单位
var cnIntLast = ‘元‘;
//最大处理的数字
var maxNum = 999999999999999.9999;
//金额整数部分
var integerNum;
//金额小数部分
var decimalNum;
//输出的中文金额字符串
var chineseStr = ‘‘;
//分离金额后用的数组,预定义
var parts;
if (money == ‘‘) { return ‘‘; }
money = parseFloat(money);
if (money >= maxNum) {
//超出最大处理数字
return ‘‘;
}
if (money == 0) {
chineseStr = cnNums[0] + cnIntLast + cnInteger;
return chineseStr;
}
//转换为字符串
money = money.toString();
if (money.indexOf(‘.‘) == -1) {
integerNum = money;
decimalNum = ‘‘;
} else {
parts = money.split(‘.‘);
integerNum = parts[0];
decimalNum = parts[1].substr(0, 4);
}
//获取整型部分转换
if (parseInt(integerNum, 10) > 0) {
var zeroCount = 0;
var IntLen = integerNum.length;
for (var i = 0; i < IntLen; i++) {
var n = integerNum.substr(i, 1);
var p = IntLen - i - 1;
var q = p / 4;
var m = p % 4;
if (n == ‘0‘) {
zeroCount++;
} else {
if (zeroCount > 0) {
chineseStr += cnNums[0];
}
//归零
zeroCount = 0;
chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
}
if (m == 0 && zeroCount < 4) {
chineseStr += cnIntUnits[q];
}
}
chineseStr += cnIntLast;
}
//小数部分
if (decimalNum != ‘‘) {
var decLen = decimalNum.length;
for (var i = 0; i < decLen; i++) {
var n = decimalNum.substr(i, 1);
if (n != ‘0‘) {
chineseStr += cnNums[Number(n)] + cnDecUnits[i];
}
}
}
if (chineseStr == ‘‘) {
chineseStr += cnNums[0] + cnIntLast + cnInteger;
} else if (decimalNum == ‘‘) {
chineseStr += cnInteger;
}
return chineseStr;
}

时间: 2024-10-11 17:56:59

money 小写转换大写的相关文章

货币数值小写转换大写

检测模块: 1 import org.junit.Test; 2 3 public class IoDetection 4 { 5 private static int a = 0;// 如果为零表示val为数值 6 7 @Test 8 public void ioDetection(String var) 9 { 10 String[] str = new String[] { "1", "2", "3", "4", &qu

C++中字母大写和小写转换实现的优化

C++中字母大写和小写转换实现的优化 write by 九天雁翎(JTianLing) -- blog.csdn.net/vagrxie 讨论新闻组及文件 在本文中所有以转换为小写为例. 从推荐复用代码的角度来看,用库函数是不错的办法: 方案一: char gc1[53] = "abcdefghigklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ"; void wayOne() { strlwr(gc1); } 长处是使用方便,别人看着也easy理解

传入一个字符串,已知字符串只由字母组成,将其中的大写字母转换为小写,小写转换为大写,返回转换后的字符串

传入一个字符串,已知字符串只由字母组成,将其中的大写字母转换为小写,小写转换为大写,返回转换后的字符串 如传入:@"GOODgoodSTUDY",返回@"goodGOODstudy" */ - (NSString *)upperExchangeLower:(NSString *)str { NSMutableString *str1=[[NSMutableString alloc] initWithString:str]; for (NSUInteger i=0;

shell中大小写转换

有两种方式: 1.用tr 例如:UPPERCASE=$(echo $VARIABLE | tr '[a-z]' '[A-Z]')   (把VARIABLE的小写转换成大写) LOWERCASE=$(echo $VARIABLE | tr '[A-Z]' '[a-z]')   (把VARIABLE的大写转换成小写) 2.用typeset typeset -u VARIABLE  (把VARIABLE的小写转换成大写) typeset -l  VARIABLE  (把VARIABLE的大写转换成小写

js实现小写转大写,js实现数字转人民币

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>小写转大写</title> <style type="text/css"> div { position:absolute;left:lin;top:lin;bottom:lin;right:lin; background-col

js金额转换大写

从tenpay找到的一段将金额小写转换成大写的js代码: 1 var DX = function (num) { 2 var strOutput = ""; 3 var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分'; 4 num += "00"; 5 var intPos = num.indexOf('.'); 6 if (intPos >= 0) 7 num = num.substring(0, intPos) + num.substr(intPos

vim中大小写转换

转自:http://www.cnblogs.com/fortran/archive/2010/07/25/1784513.html vim中大小写转化的命令是:gu或者gU,形象一点的解释就是小u意味着转为小写,大U意味着转为大写.接下来说明对这两个命令的限定(限定操作的行,字母,单词)等等. 1.整篇文章大写转化为小写 打开文件后,无须进入命令行模式. 键入:ggguG 解释一下:ggguG分作三段gg gu G gg=光标到文件第一个字符 gu=把选定范围全部小写 G=到文件结束 2.整篇文

[转] 金额小写变大写

1 /// <summary> 2 /// 金额小写变大写 3 /// </summary> 4 /// <param name="smallnum"></param> 5 /// <returns></returns> 6 public static string gMoney(decimal smallnum) 7 { 8 string cmoney , cnumber, cnum, cnum_end,cmon

JS判断是否为数字,中文,小写、大写字母

/**  取得字符串的字节长度**/ 代码function strlen(str)   {      var i;      var len;            len = 0;      for (i=0;i<str.length;i++)      {          if (str.charCodeAt(i)>255) len+=2; else len++;      }      return len;   } /* * 判断是否为数字,是则返回true,否则返回false */