网络编程
位置:首页>> 网络编程>> JavaScript>> 将数字转换成大写的人民币表达式的js函数

将数字转换成大写的人民币表达式的js函数

作者:whsnow  发布时间:2024-04-30 10:08:24 

标签:数字,人民币,表达式

将数字转换成大写的人民币,方法有很多,本例介绍的是使用js来完成的,看看下面的实现代码


function changeNumMoneyToChinese(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) {
   alert('超出最大处理数字');
   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;

}
0
投稿

猜你喜欢

  • 本文实例为大家分享了python爬虫爬取淘宝商品的具体代码,供大家参考,具体内容如下1、需求目标 : 进去淘宝页面,搜索耐克关键词,抓取 商
  • 清除浮动一个凡是做页面的人都会遇到的一个东西,但是是否大家都能够清楚的知道,全方位的了解呢?于是一闲下来了马上写了这样的一篇文章,不能讲面面
  • 有助于效率的类型选择1、使你的数据尽可能小最基本的优化之一是使你的数据(和索引)在磁盘上(并且在内存中)占据的空间尽可能小。这能给出巨大的改
  • 我就废话不多说了,直接上代码吧!import tensorflow as tf w1 = tf.Variable([[1,2]]) w2 =
  • SQLSRV驱动程序允许您创建一个结果集,其中包含可以根据游标类型以任何顺序访问的行。本主题将讨论客户端(缓冲)和服务器端(非缓冲)游标及其
  • Python 异常处理的实例详解与许多面向对象语言一样,Python 具有异常处理,通过使用 try...except 块来实现。Note:
  • 前言本文主要给大家介绍了关于Python中序列的修改、散列与切片的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
  • 单例模式是一种常见的设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派
  • 虽然在Python中的for循环与其它语言不大一样,但跳出循环还是与大多数语言一样,可以使用关键字continue跳出本次循环或者break
  • 1、说明Tasks用于并发调度协程,通过asyncio.create_task(协程对象)创建Task对象,使协程能够加入事件循环,等待调度
  • 很多网站现在都有使用QQ作为在线客服工具,我们点击它可以很方便的和网站人员联系,本站为你整理了在网站上使用QQ在线客服的代码,共13种风格,
  • 1、使用索引来更快地遍历表。缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。合理的索
  • 总括pandas的索引函数主要有三种:loc 标签索引,行和列的名称iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0i
  • 有时候,因为内容的更改或者隐私问题,我们往往不 希望别人通过“百度快照”的方法 查看 自己网站的某一些网页,对于网站管理员来说,百度快照也分
  • Numpy创建矩阵并等间隔抽取数据1、利用Numpy创建向量和二维矩阵1.1 创建向量得到需要强调的是,向量的维度,在python中并不是书
  • 如下所示:from win32com.client import constantsimport osimport win32com.cli
  • pandas.read_sql 可以在数据库中执行指定的SQL语句查询或对指定的整张表进行查询,以DataFrame 的类型返回查询结果,这
  • 项目功能地图编辑器:可以实现玩家自己定义每一关卡的样式和难易程度运行界面:实现了玩家的移动,跳跃,发射 * ,投掷 * ,以及敌人的AL(移动,
  • 一、安装vue-clinpm i @vue/cli -g二、创建项目vue-cli会创建一个完整的项目文件夹,内部包含src等,我们仅需要c
  • 接上章《pygame实现俄罗斯方块游戏(基础篇1)》继续写俄罗斯方块游戏五、计算方块之间的碰撞在Panel类里增加函数def check_o
手机版 网络编程 asp之家 www.aspxhome.com