JavaScript实现把数字转换成中文


Posted in Javascript onJune 29, 2015
var _change = {
           ary0:["零", "一", "二", "三", "四", "五", "六", "七", "八", "九"],
           ary1:["", "十", "百", "千"],
           ary2:["", "万", "亿", "兆"],
           init:function (name) {
               this.name = name;
           },
           strrev:function () {
               var ary = []
               for (var i = this.name.length; i >= 0; i--) {
                   ary.push(this.name[i])
               }
               return ary.join("");
           }, //倒转字符串。
           pri_ary:function () {
               var $this = this
               var ary = this.strrev();
               var zero = ""
               var newary = ""
               var i4 = -1
               for (var i = 0; i < ary.length; i++) {
                   if (i % 4 == 0) { //首先判断万级单位,每隔四个字符就让万级单位数组索引号递增
                       i4++;
                       newary = this.ary2[i4] + newary; //将万级单位存入该字符的读法中去,它肯定是放在当前字符读法的末尾,所以首先将它叠加入$r中,
                       zero = ""; //在万级单位位置的“0”肯定是不用的读的,所以设置零的读法为空
 
                   }
                   //关于0的处理与判断。
                   if (ary[i] == '0') { //如果读出的字符是“0”,执行如下判断这个“0”是否读作“零”
                       switch (i % 4) {
                           case 0:
                               break;
                           //如果位置索引能被4整除,表示它所处位置是万级单位位置,这个位置的0的读法在前面就已经设置好了,所以这里直接跳过
                           case 1:
                           case 2:
                           case 3:
                               if (ary[i - 1] != '0') {
                                   zero = "零"
                               }
                               ; //如果不被4整除,那么都执行这段判断代码:如果它的下一位数字(针对当前字符串来说是上一个字符,因为之前执行了反转)也是0,那么跳过,否则读作“零”
                               break;
 
                       }
 
                       newary = zero + newary;
                       zero = '';
                   }
                   else { //如果不是“0”
                       newary = this.ary0[parseInt(ary[i])] + this.ary1[i % 4] + newary; //就将该当字符转换成数值型,并作为数组ary0的索引号,以得到与之对应的中文读法,其后再跟上它的的一级单位(空、十、百还是千)最后再加上前面已存入的读法内容。
                   }
 
               }
               if (newary.indexOf("零") == 0) {
                   newary = newary.substr(1)
               }//处理前面的0
               return newary;
           }
       }
 
       //创建class类
       function change() {
           this.init.apply(this, arguments);
       }
       change.prototype = _change
 
//创建实例
       var k = new change("00102040");
       alert(k.pri_ary())
Javascript 相关文章推荐
setAttribute 与 class冲突解决
Feb 17 Javascript
jquery中常用的SET和GET
Jan 13 Javascript
js,jQuery 排序的实现代码,网页标签排序的实现,标签排序
Apr 27 Javascript
js读写json文件实例代码
Oct 21 Javascript
js实现文件上传表单域美化特效
Nov 02 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
Dec 02 Javascript
angularjs ui-router中路由的二级嵌套
Mar 10 Javascript
Javascript快速实现浏览器系统通知
Aug 26 Javascript
React-Native使用Mobx实现购物车功能
Sep 14 Javascript
js实现数组和对象的深浅拷贝
Sep 30 Javascript
浅谈es6 javascript的map数据结构
Dec 14 Javascript
微信小程序实现限制用户转发功能的实例代码
Feb 22 Javascript
使用Node.js配合Nginx实现高负载网络
Jun 28 #Javascript
jQuery模拟黑客帝国矩阵效果实例
Jun 28 #Javascript
jQuery往textarea中光标所在位置插入文本的方法
Jun 26 #Javascript
javascript实现相同事件名称,不同命名空间的调用方法
Jun 26 #Javascript
JavaScript实现数组随机排序的方法
Jun 26 #Javascript
JavaScript让Textarea支持tab按键的方法
Jun 26 #Javascript
javascript实现textarea中tab键的缩排处理方法
Jun 26 #Javascript
You might like
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
PHP实现过滤掉非汉字字符只保留中文字符
2015/06/04 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
JQuery加载图片自适应固定大小的DIV
2013/09/12 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
点击button获取text内容并改变样式的js实现
2014/09/09 Javascript
Backbone.js的一些使用技巧
2015/07/01 Javascript
jQuery对象的链式操作用法分析
2016/05/10 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
2017/03/31 Javascript
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
2018/06/05 jQuery
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
js实现3D粒子酷炫动态旋转特效
2020/09/13 Javascript
[01:12:53]完美世界DOTA2联赛PWL S2 Forest vs SZ 第一场 11.25
2020/11/26 DOTA
Python内置模块ConfigParser实现配置读写功能的方法
2018/02/12 Python
Python反爬虫技术之防止IP地址被封杀的讲解
2019/01/09 Python
Python按钮的响应事件详解
2019/03/04 Python
解决python xx.py文件点击完之后一闪而过的问题
2019/06/24 Python
python创建与遍历List二维列表的方法
2019/08/16 Python
使用Python求解带约束的最优化问题详解
2020/02/11 Python
aws 通过boto3 python脚本打pach的实现方法
2020/05/10 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
世界领先的高品质定制产品平台:Zazzle
2017/07/23 全球购物
编码实现字符串转整型的函数
2012/06/02 面试题
Java语言程序设计测试题选择题部分
2014/04/03 面试题
如何将一个描述日期或日期/时间的字符串转换为一个Date对象
2015/10/13 面试题
可贵的沉默教学反思
2014/02/06 职场文书
三项教育活动实施方案
2014/03/30 职场文书
安全生产计划书
2014/05/04 职场文书
护士2014年终工作总结
2014/11/11 职场文书
消防宣传语大全
2015/07/13 职场文书
SpringBoot工程下使用OpenFeign的坑及解决
2021/07/02 Java/Android
日本官方排名前10的动漫,名侦探柯南上榜,第一是一部创造历史的动漫
2022/03/18 日漫