js转换金额为中文大写
- function changeMoneyToChinese(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;
- ChineseStr = cnNums[0]+cnIntLast
- //document.getElementById("show").value=ChineseStr;
- 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 ){//获取整型部分转换
- zeroCount = 0;
- IntLen = IntegerNum.length;
- for( i=0;i<IntLen;i++ ){
- n = IntegerNum.substr(i,1);
- p = IntLen - i - 1;
- q = p / 4;
- 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!= '' ){//小数部分
- decLen = DecimalNum.length;
- for( i=0; i<decLen; i++ ){
- n = DecimalNum.substr(i,1);
- if( n != '0' ){
- ChineseStr += cnNums[Number(n)]+cnDecUnits[i];
- }
- }
- }
- if( ChineseStr == '' ){
- //ChineseStr += cnNums[0]+cnIntLast+cnInteger;
- ChineseStr += cnNums[0]+cnIntLast;
- }/* else if( DecimalNum == '' ){
- ChineseStr += cnInteger;
- ChineseStr += cnInteger;
- } */
- return ChineseStr;
- }
js转换金额为中文大写的更多相关文章
- JS把数字金额转换成中文大写数字的函数
//把数字金额转换成中文大写数字的函数 function num2rmb ($num){ $c1="零壹贰叁肆伍陆柒捌玖"; $c2="分角元拾佰仟万拾佰仟亿" ...
- js 将数字转换成中文大写
//完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五. const toChinesNum = ...
- python初学者笔记(2):阿拉伯数字转换成中文大写
题:输入一个数字,转换成中文大写的写法 可运行的程序(Python 2.7.9): # -*- coding: utf-8 -*- #在python2的py文件里面写中文,必须要添加一行声明文件编码的 ...
- js阿拉伯数字转中文大写 方法重多
方法一 function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = &qu ...
- js金额转中文大写
基础参数: var AIW_number = {0:'零', 1:'壹', 2:'贰', 3:'叁', 4:'肆', 5:'伍', 6:'陆', 7:'柒', 8:'捌', 9:'玖'} var AI ...
- js阿拉伯数字转中文大写
function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = "千百 ...
- excel小写金额转换成中文大写
假设 假设数据在A1单元格 任何一个个单元格输入公式=TEXT(INT(A1),"[dbnum2]")&"元"&IF(INT(A1*10)-IN ...
- JS 转换数字为大写
function toUpper(n) { n = n+''; var unit = '十百千万'; var num = '一二三四五六七八九 '; var array = new Array(); ...
- 完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五
const toChineseNum = (num) => { const unit = ['', '十', '百', '千'] const counts = ['零', '一', '二', ' ...
随机推荐
- debiand上安装thunderbird
deb包下载地址 http://sourceforge.net/projects/ubuntuzilla/files/mozilla/apt/pool/main/t/thunderbird-mozil ...
- java事物
[引用:http://www.cnblogs.com/kristain/articles/2038397.html] 一.什么是事务 事务是访问数据库的一个操作序列,数据库应用系统通过事务集来完成对数 ...
- curl download zip file
https://askubuntu.com/questions/285976/download-zip-file-with-curl-command
- loj2013 「SCOI2016」幸运数字
点分治+线性基 (为了这六个字窝调了一下午一晚上QAQ #include <iostream> #include <cstring> #include <cstdio&g ...
- webdriver高级应用- 改变一个页面对象的属性值
适用于一些无法操作的元素,可以直接改他的属性从而操作,代码如下: #encoding=utf-8 from selenium import webdriver import unittest impo ...
- curl post 用json方式
if(!function_exists('tps_curl_post3')){ function tps_curl_post3($url, $postData) { $postData = json_ ...
- 【bzoj3170】[Tjoi 2013]松鼠聚会 旋转坐标系
题目描述 有N个小松鼠,它们的家用一个点x,y表示,两个点的距离定义为:点(x,y)和它周围的8个点即上下左右四个点和对角的四个点,距离为1.现在N个松鼠要走到一个松鼠家去,求走过的最短距离. 输入 ...
- 【bzoj3073】[Pa2011]Journeys 线段树优化建图+堆优化Dijkstra
题目描述 Seter建造了一个很大的星球,他准备建造N个国家和无数双向道路.N个国家很快建造好了,用1..N编号,但是他发现道路实在太多了,他要一条条建简直是不可能的!于是他以如下方式建造道路:(a, ...
- [LOJ#114]k 大异或和
[LOJ#114]k 大异或和 试题描述 这是一道模板题. 给由 n 个数组成的一个可重集 S,每次给定一个数 k,求一个集合 T⊆S,使得集合 T 在 S 的所有非空子集的不同的异或和中,其异或和 ...
- [CODEVS1911] 孤岛营救问题(分层图最短路)
传送门 吐槽:神tm网络流... 用持有的钥匙分层,状态压缩,用 2 进制表示持有的钥匙集合. dis[i][j][k] 表示持有的钥匙集合为 k,到达点 (i, j) 的最短路径. 分层图的最短路听 ...