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高级程序设计(第3版)学习笔记11 内建js对象
Oct 11 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
Apr 07 Javascript
jQuery弹性滑动导航菜单实现思路及代码
May 02 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
Nov 30 Javascript
JavaScript中rem布局在react中的应用
Dec 09 Javascript
学习JavaScript设计模式之代理模式
Jan 12 Javascript
AngularJS应用开发思维之依赖注入3
Aug 19 Javascript
使用vux实现上拉刷新功能遇到的坑
Feb 08 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
Aug 27 Javascript
微信小程序实现九宫格抽奖
Apr 15 Javascript
对TypeScript库进行单元测试的方法
Jul 18 Javascript
React配置子路由的实现
Jun 03 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
PHP安全配置
2006/12/06 PHP
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
PHP Directory 函数的详解
2013/03/07 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
ThinkPHP3.1.x修改成功与失败跳转页面的方法
2017/09/29 PHP
网页设计常用的一些技巧
2006/12/22 Javascript
Prototype 工具函数 学习
2009/07/23 Javascript
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
jQuery实现统计输入文字个数的方法
2015/03/11 Javascript
js 获取范围内的随机数实例代码
2016/08/02 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
jQuery向父辈遍历的简单方法
2016/09/18 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
详解Angular2表单-模板驱动的表单(Template-Driven Forms)
2017/08/04 Javascript
如何修改Vue打包后文件的接口地址配置的方法
2020/04/22 Javascript
javascript中layim之查找好友查找群组
2021/02/06 Javascript
Python实现的使用telnet登陆聊天室实例
2015/06/17 Python
Django框架中方法的访问和查找
2015/07/15 Python
Python进阶-函数默认参数(详解)
2017/05/18 Python
在Mac上删除自己安装的Python方法
2018/10/29 Python
python 正则表达式参数替换实例详解
2020/01/17 Python
python range实例用法分享
2020/02/06 Python
Django 项目通过加载不同env文件来区分不同环境
2020/02/17 Python
使用python3 实现插入数据到mysql
2020/03/02 Python
pycharm解决关闭flask后依旧可以访问服务的问题
2020/04/03 Python
C++的几个面试题附答案
2016/08/03 面试题
外贸业务员求职信范文
2013/12/12 职场文书
电子商务专业自我鉴定
2013/12/18 职场文书
违反课堂纪律检讨书
2014/01/19 职场文书
股权转让协议书范本
2014/04/12 职场文书
乡镇群众路线整改落实情况汇报
2014/10/28 职场文书
小时代观后感
2015/06/10 职场文书
企业法人代表证明书
2015/06/18 职场文书
学生退学证明
2015/06/23 职场文书
Python带你从浅入深探究Tuple(基础篇)
2021/05/15 Python