前端:JS操作数字类库
1、随机数范围
/*随机数范围*/
random (min, max) {if (arguments.length === 2) {return Math.floor(min + Math.random() * ( (max+1) - min ))}else{return null;}}
2、将数字翻译成中文的大写数字
/*将数字翻译成中文的大写数字*/
numberToChinese (num) {var AA = new Array("零", "一", "二", "三", "四", "五","六", "七", "八", "九", "十");var BB = new Array("", "十", "百", "仟", "萬", "億", "点", "");var a = ("" + num).replace(/(^0*)/g, "").split("."),k = 0,re = "";for(var i = a[0].length - 1; i >= 0; i--) {switch(k) {case 0:re = BB[7] + re;break;case 4:if(!new RegExp("0{4}//d{" + (a[0].length - i - 1) + "}$").test(a[0]))re = BB[4] + re;break;case 8:re = BB[5] + re;BB[7] = BB[5];k = 0;break;}if(k % 4 == 2 && a[0].charAt(i + 2) != 0 &&a[0].charAt(i + 1) == 0)re = AA[0] + re;if(a[0].charAt(i) != 0)re = AA[a[0].charAt(i)] + BB[k % 4] + re;k++;}if(a.length > 1) // 加上小数部分(如果有小数部分){re += BB[6];for(var i = 0; i < a[1].length; i++)re += AA[a[1].charAt(i)];}if(re == '一十')re = "十";if(re.match(/^一/) && re.length == 3)re = re.replace("一", "");return re;
}
3、将数字转换为大写金额
/*将数字转换为大写金额*/
changeToChinese (Num) {//判断如果传递进来的不是字符的话转换为字符if(typeof Num == "number") {Num = new String(Num);};Num = Num.replace(/,/g, "") //替换tomoney()中的“,”Num = Num.replace(/ /g, "") //替换tomoney()中的空格Num = Num.replace(/¥/g, "") //替换掉可能出现的¥字符if(isNaN(Num)) { //验证输入的字符是否为数字//alert("请检查小写金额是否正确");return "";};//字符处理完毕后开始转换,采用前后两部分分别转换var part = String(Num).split(".");var newchar = "";//小数点前进行转化for(var i = part[0].length - 1; i >= 0; i--) {if(part[0].length > 10) {return "";//若数量超过拾亿单位,提示}var tmpnewchar = ""var perchar = part[0].charAt(i);switch(perchar) {case "0":tmpnewchar = "零" + tmpnewchar;break;case "1":tmpnewchar = "壹" + tmpnewchar;break;case "2":tmpnewchar = "贰" + tmpnewchar;break;case "3":tmpnewchar = "叁" + tmpnewchar;break;case "4":tmpnewchar = "肆" + tmpnewchar;break;case "5":tmpnewchar = "伍" + tmpnewchar;break;case "6":tmpnewchar = "陆" + tmpnewchar;break;case "7":tmpnewchar = "柒" + tmpnewchar;break;case "8":tmpnewchar = "捌" + tmpnewchar;break;case "9":tmpnewchar = "玖" + tmpnewchar;break;}switch(part[0].length - i - 1) {case 0:tmpnewchar = tmpnewchar + "元";break;case 1:if(perchar != 0) tmpnewchar = tmpnewchar + "拾";break;case 2:if(perchar != 0) tmpnewchar = tmpnewchar + "佰";break;case 3:if(perchar != 0) tmpnewchar = tmpnewchar + "仟";break;case 4:tmpnewchar = tmpnewchar + "万";break;case 5:if(perchar != 0) tmpnewchar = tmpnewchar + "拾";break;case 6:if(perchar != 0) tmpnewchar = tmpnewchar + "佰";break;case 7:if(perchar != 0) tmpnewchar = tmpnewchar + "仟";break;case 8:tmpnewchar = tmpnewchar + "亿";break;case 9:tmpnewchar = tmpnewchar + "拾";break;}var newchar = tmpnewchar + newchar;}//小数点之后进行转化if(Num.indexOf(".") != -1) {if(part[1].length > 2) {// alert("小数点之后只能保留两位,系统将自动截断");part[1] = part[1].substr(0, 2)}for(i = 0; i < part[1].length; i++) {tmpnewchar = ""perchar = part[1].charAt(i)switch(perchar) {case "0":tmpnewchar = "零" + tmpnewchar;break;case "1":tmpnewchar = "壹" + tmpnewchar;break;case "2":tmpnewchar = "贰" + tmpnewchar;break;case "3":tmpnewchar = "叁" + tmpnewchar;break;case "4":tmpnewchar = "肆" + tmpnewchar;break;case "5":tmpnewchar = "伍" + tmpnewchar;break;case "6":tmpnewchar = "陆" + tmpnewchar;break;case "7":tmpnewchar = "柒" + tmpnewchar;break;case "8":tmpnewchar = "捌" + tmpnewchar;break;case "9":tmpnewchar = "玖" + tmpnewchar;break;}if(i == 0) tmpnewchar = tmpnewchar + "角";if(i == 1) tmpnewchar = tmpnewchar + "分";newchar = newchar + tmpnewchar;}}//替换所有无用汉字while(newchar.search("零零") != -1)newchar = newchar.replace("零零", "零");newchar = newchar.replace("零亿", "亿");newchar = newchar.replace("亿万", "亿");newchar = newchar.replace("零万", "万");newchar = newchar.replace("零元", "元");newchar = newchar.replace("零角", "");newchar = newchar.replace("零分", "");if(newchar.charAt(newchar.length - 1) == "元") {newchar = newchar + "整"}return newchar;}
前端:JS操作数字类库相关推荐
- 前端js操作截取/裁剪图片
前端js操作截取/裁剪图片 主要使用canvas相关api来实现图片裁剪 在vue中使用 <template><div><img :src="imgSrc&qu ...
- 前端js的数字转化为字符串相互转化
一:数字转化为字符串 var num = 123 1. num = num + '' // 打印得到 '123' 2. num = num.toString() // 打印得到 '123' 3. nu ...
- html 字段数字格式转换,JS操作字符串转数字的常见方法示例
本文实例讲述了JS操作字符串转数字的常见方法.分享给大家供大家参考,具体如下: JS中字符串转数字共三种方法 一.转换函数 JS提供了两个转换函数 parseInt() 换成整数 parseFloat ...
- 从零开始前端学习[50]:js操作标签属性,读写属性标签
js操作标签属性 标签属性 js下操作标签属性 提示: 博主:章飞_906285288 博客地址:http://blog.csdn.net/qq_29924041 前端的一些标签属性 标签属性:通俗的 ...
- 前端JS基础知识复习笔记(1)
珠峰前端JS基础复习笔记(1) 在财务工作中自学了HTML和CSS之后,硬啃了JS高级编程三,实在觉得想要学的透是需要找一位好老师的,于是最近在学习周啸天老师的JS高级编程课,课外需要再补补基础,就回 ...
- 前端(js/css/html)那些小的知识点,持续更新......
前端(js/css/html)那些小的知识点,持续更新...... 1.行内元素与块级元素有哪些及区别? 块级元素和行内元素的区别是,块级元素会占一行显示,而行内元素可以在一行并排显示.通过样式控制, ...
- 前端Js框架 UI框架汇总 特性 适用范围 选择
身为一个资深后端工程师,面对层出不穷的前端框架,总让人眼花缭乱,做一个综合解析贴,从全局着眼,让我们明白各种前端框架的应用范围,为如何选择前端框架,从不同的维度提供一些线索,做为一个长期优化贴,欢迎指 ...
- CountUp.js – 让数字以非常有趣的动画方式显示
CountUp.js 无依赖的.轻量级的 JavaScript 类,可以用来快速创建以一种更有趣的动画方式显示数值数据.尽管它的名字叫 countUp,但其实可以在两个方向进行变化,这是根据你传递的 ...
- ie9无法获取未定义或 null 引用的属性“indexof”_前端JS基础篇(二)JS基本数据类型和引用数据类型及检测数据类型方法...
JS中的数据类型 (一).基本数据类型(值类型) 1.number:数字 -12.12.5.-12.5 0这些数字都是number: js中增加了一个number类型的数据:'NaN' typeof ...
最新文章
- STM32F1和STM32F4 区别 (安富莱整理)
- 设计模式--享元(Flyweight)模式
- HDU 1518 Square
- HTTP访问一个网站的过程详解
- hdfs中与file数组类似的数组_Chapter05 Java中的数组
- 基于springboot2.5.5自建启动器starter制品库
- 微型计算机主存可以分为,计算机基础试题 (含答案)
- Java开发必须熟悉的Linux命令总结
- html整合vue elementui,vue2.0结合Element-ui实战案例
- Python编程进阶,Python如何实现多进程?
- sparkstreaming监听hdfs目录如何终止_四十六、Spark Streaming简介及入门
- 导出文件后打不开_PPT | 快速导出4K超高视频
- hdu acmsteps 2.1.3 Cake
- 文件操作 详解(freopen)(C++)
- Excel操作技巧大全
- 鲁大师2022半年报电脑排行:RTX 3090 Ti继任“卡皇”,顶级笔记本开始拼颜值!
- 敏捷测试的关键成功要素
- BZOJ2434【NOI2011】阿狸的打字机 AC自动机+Fail树+树状数组
- 提高睡眠质量的东西,这几件东西能让你睡得香又好
- 【JS】网页点击悬浮小苹果+小虫子追踪鼠标位置(可替换)