JS案例分享之金额小写转大写


Posted in Javascript onMay 15, 2014

之前做项目的时候遇到需要在输入小写金额之后自动转成大写,经过一番研究,整出了如下代码,分享给大家,希望有所帮助

function Arabia_to_Chinese(Num){ 
for(i=Num.length-1;i>=0;i--) 
{ 
Num = Num.replace(",","") 
Num = Num.replace(" ","") 
} 
Num = Num.replace("¥","") 
if(isNaN(Num)) { 
alert("请检查小写金额是否正确"); 
return; 
} 
part = String(Num).split("."); 
newchar = ""; 
for(i=part[0].length-1;i>=0;i--){ 
if(part[0].length > 10){ alert("位数过大,无法计算");return "";} 
tmpnewchar = "" 
perchar = part[0].charAt(i); 
switch(perchar){ 
case "0": tmpnewchar="零" + tmpnewchar ;break; 
case "1": tmpnewchar="壹" + tmpnewchar ;break; 
case "2": tmpnewchar="贰" + tmpnewchar ;break; 
case "3": tmpnewchar="叁" + tmpnewchar ;break; 
case "4": tmpnewchar="肆" + tmpnewchar ;break; 
case "5": tmpnewchar="伍" + tmpnewchar ;break; 
case "6": tmpnewchar="陆" + tmpnewchar ;break; 
case "7": tmpnewchar="柒" + tmpnewchar ;break; 
case "8": tmpnewchar="捌" + tmpnewchar ;break; 
case "9": tmpnewchar="玖" + tmpnewchar ;break; 
} 
switch(part[0].length-i-1){ 
case 0: tmpnewchar = tmpnewchar +"元" ;break; 
case 1: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break; 
case 2: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break; 
case 3: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break; 
case 4: tmpnewchar= tmpnewchar +"万" ;break; 
case 5: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break; 
case 6: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break; 
case 7: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break; 
case 8: tmpnewchar= tmpnewchar +"亿" ;break; 
case 9: tmpnewchar= tmpnewchar +"拾" ;break; 
} 
newchar = tmpnewchar + newchar; 
} 
if(Num.indexOf(".")!=-1){ 
if(part[1].length > 2) { 
part[1] = part[1].substr(0,2) 
} 
for(i=0;i<part[1].length;i++){ 
tmpnewchar = "" 
perchar = part[1].charAt(i) 
switch(perchar){ 
case "0": tmpnewchar="零" + tmpnewchar ;break; 
case "1": tmpnewchar="壹" + tmpnewchar ;break; 
case "2": tmpnewchar="贰" + tmpnewchar ;break; 
case "3": tmpnewchar="叁" + tmpnewchar ;break; 
case "4": tmpnewchar="肆" + tmpnewchar ;break; 
case "5": tmpnewchar="伍" + tmpnewchar ;break; 
case "6": tmpnewchar="陆" + tmpnewchar ;break; 
case "7": tmpnewchar="柒" + tmpnewchar ;break; 
case "8": tmpnewchar="捌" + tmpnewchar ;break; 
case "9": tmpnewchar="玖" + tmpnewchar ;break; 
} 
if(i==0)tmpnewchar =tmpnewchar + "角"; 
if(i==1)tmpnewchar = tmpnewchar + "分"; 
newchar = newchar + tmpnewchar; 
} 
} 
while(newchar.search("零零") != -1) 
newchar = newchar.replace("零零", "零"); 
newchar = newchar.replace("零亿", "亿"); 
newchar = newchar.replace("亿万", "亿"); 
newchar = newchar.replace("零万", "万"); 
newchar = newchar.replace("零元", "元"); 
newchar = newchar.replace("零角", ""); 
newchar = newchar.replace("零分", ""); 
if (newchar.charAt(newchar.length-1) == "元" || newchar.charAt(newchar.length-1) == "角") 
newchar = newchar+"整" 
return newchar; 
}
Javascript 相关文章推荐
javascript 类定义的4种方法
Sep 12 Javascript
用JSON做数据传输格式中的一些问题总结
Dec 21 Javascript
Prototype源码浅析 String部分(三)之HTML字符串处理
Jan 15 Javascript
js鼠标滑过弹出层的定位IE6bug解决办法
Dec 26 Javascript
移除AngularJS下URL中的#字符的方法
Jun 19 Javascript
js实现表单检测及表单提示的方法
Aug 14 Javascript
jQuery插件实现无缝滚动特效
Nov 24 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
Aug 02 Javascript
ActiveX控件的使用-js实现打印超市小票功能代码详解
Nov 22 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
Jan 03 Javascript
Vue-cli@3.0 插件系统简析
Sep 05 Javascript
java遇到微信小程序 &quot;支付验证签名失败&quot; 问题解决
Dec 22 Javascript
自写的jQuery异步加载数据添加事件
May 15 #Javascript
js子页面获取父页面数据示例
May 15 #Javascript
js获取url中&quot;?&quot;后面的字串方法
May 15 #Javascript
javascript实例--教你实现扑克牌洗牌功能
May 15 #Javascript
javascript常用的正则表达式实例
May 15 #Javascript
js生成缩略图后上传并利用canvas重绘
May 15 #Javascript
Jquery性能优化详解
May 15 #Javascript
You might like
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
2010/10/12 PHP
提高php编程效率技巧
2015/08/13 PHP
PHP识别二维码的方法(php-zbarcode安装与使用)
2016/07/07 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
2016/09/11 PHP
php PDO实现的事务回滚示例
2017/03/23 PHP
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
jQuery效果 slideToggle() 方法(在隐藏和显示之间切换)
2011/06/28 Javascript
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
javascript题目,重写函数让其无限相加
2012/02/15 Javascript
如何使用Jquery获取Form表单中被选中的radio值
2013/08/09 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
Javascript的闭包详解
2014/12/26 Javascript
JS使用cookie实现DIV提示框只显示一次的方法
2015/11/05 Javascript
AngularJs中route的使用方法和配置
2016/02/04 Javascript
bootstrap输入框组件使用方法详解
2017/01/19 Javascript
js图片放大镜实例讲解(必看篇)
2017/07/17 Javascript
使用clipboard.js实现复制功能的示例代码
2017/10/16 Javascript
微信小程序实现tab切换效果
2017/11/21 Javascript
postman+json+springmvc测试批量添加实例
2018/03/31 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
js实现简单贪吃蛇游戏
2020/05/15 Javascript
JavaScript事件循环及宏任务微任务原理解析
2020/09/02 Javascript
[09:37]2018DOTA2国际邀请赛寻真——不懈追梦的Team Serenity
2018/08/13 DOTA
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
python快速查找算法应用实例
2014/09/26 Python
python 3.0 模拟用户登录功能并实现三次错误锁定
2017/11/01 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
Python批量生成幻影坦克图片实例代码
2019/06/04 Python
解决Django中调用keras的模型出现的问题
2019/08/07 Python
大学军训感言400字
2014/03/11 职场文书
服装发布会策划方案
2014/05/22 职场文书
养成教育工作总结
2015/08/13 职场文书
2015年物业管理员工工作总结
2015/10/15 职场文书
python opencv人脸识别考勤系统的完整源码
2021/04/26 Python