js金额转中文大写
基础参数:
var AIW_number = {0:'零', 1:'壹', 2:'贰', 3:'叁', 4:'肆', 5:'伍', 6:'陆', 7:'柒', 8:'捌', 9:'玖'}
var AIW_unitN = ['兆','亿','万','个']
var AIW_unitP = ['厘','分','角']
var AIW_unitU = ['仟','佰','拾','个']
主方法:
function amountInWords(amount) {
var AIW = (amount+'').split('.')
if(AIW.length>1)
return amountInWordsRound(AIW[0])+'元'+amountInWordsF(AIW[1])
else
return amountInWordsRound(AIW[0])+'元整'
}
整数部分转换:
function amountInWordsRound(round) {
if(!round) return ''
var words = ''
var rounds = Array.from(round)
var length = rounds.length
var unitU = JSON.parse(JSON.stringify(AIW_unitU))
var unitN = JSON.parse(JSON.stringify(AIW_unitN))
while(length>0) {
length--
A = rounds.pop()
U = unitU.pop()
N = (unitU.length==3?unitN.pop():'')
if(A!=0) words=AIW_number[A]+U+N+words
else words=AIW_number[A]+N+words
if(unitU.length==0) unitU = JSON.parse(JSON.stringify(AIW_unitU))
words = words.replace('undefined','')
words = words.replace('个','')
}
return amountInWordsFormate(words)
}
小数部分转换;
function amountInWordsF(fix) {
if(!fix) return ''
var unitP = JSON.parse(JSON.stringify(AIW_unitP));
var fixs = Array.from(fix)
var words=''
$.each(fixs,function(i,o){
var P = unitP.pop()
if(o==0) words+=AIW_number[o]
else words+=AIW_number[o]+P
words = words.replace('undefined','')
})
return amountInWordsFormate(words)
}
格式化处理:
function amountInWordsFormate(words) {
//去除中位零
length = words.length
while(length>1) {
length--
var now = words.charAt(length)
var before = words.charAt(length-1)
var after = words.charAt(length+1)
if(now == before || (AIW_unitN.includes(after) && now==AIW_number[0] ) ){
words = words.substring(0,length)+words.substring(length+1)
length = words.length
}
}
//去除末位零
length = 2
while(length>1) {
length--
if(words.charAt(words.length-1)==AIW_number[0] && words.length>1){
words = words.substring(0,words.length-1)
length = 2
}
}
return words
}
js金额转中文大写的更多相关文章
- 【转载】C#工具类:人民币金额转换为中文大写
在涉及到金融业务这一块的系统设计中,时常能够遇到的情况是需要将阿拉伯数字的人民币金额自动转换为中文的大写金额.现在互联网上也有很多网站提供此类服务,只要你输入人民币的阿拉伯数字金额,输入后自动给你转换 ...
- C# 金额转中文大写
今天看到一个库是把金额转中文大写,看起来很容易,所以我就自己写了 创建的项目是创建一个 dot net core 的项目,实际上这个项目可以创建为 Stand 的. 首先创建类,这个类的构造传入一个 ...
- 2018-4-29-C#-金额转中文大写
title author date CreateTime categories C# 金额转中文大写 lindexi 2018-04-29 09:50:38 +0800 2018-04-02 21:4 ...
- js 金额小写转换为大写
<script> jQuery(document).ready(function () { //当金额文本框失去焦点时,自动将数字转化为大写填充到 大写的文本框中 $("#Amo ...
- js转换金额为中文大写
function changeMoneyToChinese(money){ var cnNums = new Array("零","壹","贰&quo ...
- vue filters 金额转中文大写
capitalAmount(amount: any) { // 汉字的数字 const cnNums = ["零", "壹 ...
- java数字金额转中文大写
package com.example.convert; import java.text.DecimalFormat; import java.util.Scanner; /** * 金额转换 * ...
- js阿拉伯数字转中文大写 方法重多
方法一 function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = &qu ...
- js阿拉伯数字转中文大写
function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = "千百 ...
随机推荐
- Linux 使用 scp 命令远程拷贝文件和目录
使用方法: $ scp --help scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o s ...
- centos7 安装zabbix3.0 安装zabbix4.0 yum安装zabbix 国内源安装zabbix 阿里云服务器安装zabbix
首先,此篇文章是有原因的. 刚开始也和大家一样来学习安装zabbix 奈何网上的教程和现实出现不一样的情况 在安装zabbix过程中,因为zabbix下载源是在国外,下载途中会出现终止下载的情况 tr ...
- Pandas系列(十七)-EDA(pandas-profiling)
对于探索性数据分析来说,做数据分析前需要先看一下数据的总体概况,pandas_profiling工具可以快速预览数据. 安装 pip install pandas-profiling 使用 impor ...
- UVA 156 Ananagrams (STL multimap & set)
原题链接: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=98&p ...
- HDU 1106 (1.3.5) 排序 (C语言描述)
排序 Problem Description 输入一行数字,如果我们把这行数字中的'5'都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以'0'开头,这些头部的'0'应该被忽略掉,除非 ...
- Solon 开发,七、自定义注解开发汇总
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注 ...
- 你管这叫代理模式(Proxy Pattern)
代理模式 代理模式即给一个真实类提供一个代理类,该代理类代替真实类完成其功能,一般还可在代理类上添加一些真实类不具有的附加功能,通俗来讲代理模式就是我们生活中常见的中介,代理模式又可分为静态代理和 ...
- 《剑指offer》面试题05. 替换空格
问题描述 请实现一个函数,把字符串 s 中的每个空格替换成"%20". 示例 1: 输入:s = "We are happy." 输出:"We%20a ...
- 前端 | 自定义组件 v-model:Vue 如何实现双向绑定
v-model 是 Vue 中一个常用的指令,常用于表单中的数据绑定.如下基本用法想必大家都很熟悉,data 中的 checked 属性的值就会随着多选框的状态实时变化. <el-checkbo ...
- covid19数据挖掘与可视化实验
数据说明: 来源: https://www.kesci.com/mw/project/5e68db4acdf64e002c97b413/dataset (ncov) 日期:从2020年1月21日开始 ...