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 相关文章推荐
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
Mar 24 Javascript
javascript显示用户停留时间的简单实例
Aug 05 Javascript
javascript四舍五入函数代码分享(保留后几位)
Dec 10 Javascript
深入理解选择框脚本[推荐]
Dec 13 Javascript
jQuery实现动态添加、删除按钮及input输入框的方法
Apr 27 jQuery
JavaScript之面向对象_动力节点Java学院整理
Jun 29 Javascript
webpack4的迁移的使用方法
May 25 Javascript
Vue2.0学习系列之项目上线的方法步骤(图文)
Sep 25 Javascript
layui复选框限制选择个数的方法
Sep 18 Javascript
p5.js绘制旋转的正方形
Oct 23 Javascript
Vue实现手机扫描二维码预览页面效果
May 28 Javascript
全面解析Vue中的$nextTick
Dec 24 Vue.js
自写的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实现mysql同步的实现方法
2009/10/21 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
2011/05/09 PHP
php创建、获取cookie及基础要点分析
2015/01/26 PHP
php 类自动载入的方法
2015/06/03 PHP
Jquery实现网页跳转或用命令打开指定网页的解决方法
2013/07/09 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
基于jQuery实现仿淘宝套餐选择插件
2015/03/04 Javascript
JavaScript设置表单上传时文件个数的方法
2015/08/11 Javascript
javascript运算符——逻辑运算符全面解析
2016/06/27 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
javascript 判断页面访问方式电脑或者移动端
2016/09/19 Javascript
Node.js使用orm2进行update操作时关联字段无法修改的解决方法
2017/06/13 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
浅谈react.js中实现tab吸顶效果的问题
2017/09/06 Javascript
security.js实现的RSA加密功能示例
2018/06/06 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
[58:18]2018DOTA2亚洲邀请赛3月29日 小组赛B组 iG VS Mineski
2018/03/30 DOTA
在Python中使用全局日志时需要注意的问题
2015/05/06 Python
Python编程判断一个正整数是否为素数的方法
2017/04/14 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
Python2和Python3中urllib库中urlencode的使用注意事项
2018/11/26 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
浅析python标准库中的glob
2020/03/13 Python
使用HTML5加载音频和视频的实现代码
2020/11/30 HTML / CSS
奥地利网上现代灯具和灯饰店:Lampenwelt.at
2018/01/29 全球购物
美国最大的旗帜经销商:Carrot-Top
2018/02/26 全球购物
施华洛世奇中国官网:SWAROVSKI中国
2020/06/16 全球购物
简短大学毕业感言
2014/01/18 职场文书
公司授权委托书
2014/10/17 职场文书
2014年行政后勤工作总结
2014/12/06 职场文书
2016暑期师德培训心得体会
2016/01/09 职场文书
致毕业季:你如何做好自己的职业生涯规划书?
2019/07/01 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书
MySQL表字段时间设置默认值
2021/05/13 MySQL
如何判断pytorch是否支持GPU加速
2021/06/01 Python
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers