js实现数字转换大写金额
convertCurrency.js
export const convertCurrency = (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) {//超出最大处理数字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; }
vue 引入js
import { convertCurrency } from "@/utils/convertCurrency"; export default {data(){return{ }},methods:{convertCurrency }
}
使用:
<div>11142.1</div>
<div>{{convertCurrency(11142.1)}}</div>
结果:
js实现数字转换大写金额相关推荐
- js将数字转换成万、亿、万亿
// js将数字转换成万.亿.万亿 export const numberFormat = (value)=> {var param = {};var k = 10000,sizes = ['' ...
- 用原生js把数字转换成货币人民币表示带逗号表示方法
用原生js把数字转换成货币人民币表示带逗号表示方法 function rmb(str){let strArr = String( parseFloat(str).toFixed(2) ).split( ...
- html中汉字代码变成数字代码,Angular.js 实现数字转换汉字实例代码
AngularJS 简介 AngularJS 是一个 JavaScript 框架.它可通过 AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML. 下面通过本文给大家 ...
- 非常经典的JS,数字转换成大写金额函数
引用内容: <script language="javascript"> <!-- // 数字转换成大写金额函数 func ...
- js将数字转换成中文大写
//完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五.const toChinesNum = ( ...
- js将数字转换成字母
数字转换成字母 a=>1;b=>2;.aa=>27等等 这个问题的本质是进制转换,进制转换的原理是 aaaa = 1×26^3 + 1×26^2 + 1×26^1 + 1×26^0 ...
- js将数字转换成中文
来源:https://www.cnblogs.com/breakdown/archive/2012/09/20/2689306.html var _change = { ary0 ...
- js将数字转换成大写汉字
<html><head><meta http-equiv="Content-Type" content="text/html; charse ...
- 数字转换大写金额的实现
这个似乎是一道某公司的招聘试题.事实上还很实用,我一时心血来潮,到网上找了一个实现方法,然后还自己写了另一个方法.现整理摘抄如下.(暂时没时间作详细注释和进一步验证,请见谅) package org. ...
- js 金额数字转换成普通数值(Number类型)
CurrencyFomatNumber(number, n) {if (number != null && number != '' && number != unde ...
最新文章
- Numpy 生成 Bool型数组、一维转多维数组reshape、多维转一维数组、替换数组元素、提取数组元素、数组交集、差集、过滤数组元素、二维数组反转行、交换数组维度
- UVA 10815 Andy's First Dictionary(STL: set)
- 在 Kubernetes 上弹性深度学习训练利器 -- Elastic Training Operator
- 从薪资、需求来分析,武汉Java开发就业前景好不好?
- java把对象转成json_java 把对象 对象转换成json字符串 | 学步园
- centos标准分区调整大小_CentOS下调整home和根分区大小的方法
- mysql 查询视图是否存在_sql server判断数据库、表、列、视图是否存在
- python的模块导入问题_python的模块导入问题
- 基于python 实现KNN 算法
- 正态性检验(Normality test)
- 结合P2P软件使用Ansible分发大文件 1
- 极速下载!利用插件破解百度云限速
- win 11 大更新,新功能爱了爱了。
- matlab蒙特卡罗方法求体积_蒙特卡罗方法详细讲解与MATLAB实现.ppt
- Element表格之表头合并、行合并和列合并
- 神舟k610d i7 d2 黑苹果安装资源 10.15.x
- 【Java】练习题库 单选题
- 应届大学毕业生面试应答
- vulnhub靶场-hacksudo - Thor
- Spring Boot 技术知识点:如何详解@WebFilter注解