js格式化货币数据实现代码
function formatCurrency(num) {
var sign="";
if(isNaN(num))
{
num = 0;
}
if(num<0)
{
sign="-";
}
var strNum=num+"";
var arr1 = strNum.split(".");
var hasPoint=false;//是否有小数部分
var piontPart="";//小数部分
var intPart=strNum;//整数部分
if(arr1.length>=2)
{
hasPoint=true;
piontPart= arr1[1];
intPart=arr1[0];
}
var res='';//保存添加逗号的部分
var intPartlength=intPart.length;//整数部分长度
var maxcount=Math.ceil(intPartlength/3);//整数部分需要添加几个逗号
for (var i = 1; i <=maxcount;i++)//每三位添加一个逗号
{
var startIndex=intPartlength-i*3;//开始位置
if(startIndex<0)//开始位置小于0时修正为0
{
startIndex=0;
}
var endIndex=intPartlength-i*3+3;//结束位置
var part=intPart.substring(startIndex,endIndex)+",";
res=part+res;
}
res=res.substr(0,res.length-1);//去掉最后一个逗号
if(hasPoint)
{
return "¥"+sign+res+"."+piontPart;
}
else
{
return "¥"+sign+res;
}
}
相关推荐
-
用javascript判断输入数据是否货币并自动添加¥符号的代码
经典上的一位朋友提出的问题,偶以前正好写过一个股票系统处理过一些货币数据,现在记忆犹在,所以就帮忙解决了.自己也保存再次,以便以后使用. new document [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
-
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
在项目里碰到需要把类似'450000'的数字转换为会计记账所用的格式,'450,000.00',分隔千分位和小数点后不够两位数时自动补齐,已下记录几种实现的方式 ps:如果不考虑后面的小数点,最快捷的方法: "12345678".replace(/[0-9]+?(?=(?:([0-9]{3}))+$)/g,function(a){return a+','}); //输出 12 345 678 1.用循环的方式实现 function formatNum(str){ var newStr
-
js限制文本框为整数和货币的函数代码
限制为整数 <html> <head> <script language="javascript" type="text/javascript"> var G=document.getElementById; function checkNumber(){ var reg = /^(?:0|[1-9][0-9]?|100)$/; var strNumber = G("txtNumber").value; ale
-
js金额数字格式化实现代码(加减逗号处理)
例1,使数字1111111变成11,111,111.00,保留两位小数. 复制代码 代码如下: <html><head><script type="text/javascript">function outputmoney(number) {number = number.replace(/\,/g, "");if(isNaN(number) || number == "")return ""
-
JS格式化数字金额用逗号隔开保留两位小数
例如: 12345格式化为12,345.00 12345.6格式化为12,345.60 12345.67格式化为 12,345.67 只留两位小数. 回来后写了个格式化函数.可以控制小数位数,自动四舍五入. 代码如下: 复制代码 代码如下: function fmoney(s, n) { n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s + "").replace(/[^\d\.-]/g, ""
-
Javascript将数字转化成为货币格式字符串
这里第一个方法是用JavaScript将数字number转换为货币字符串的格式(参数:保留小数位数,货币符号,整数部分千位分隔符,小数分隔符) 这里第二个方法是用简单的正则表达式将货币字符换转换为纯净的数字字符串,之后便可以将字符串转换为数字number JavaScript Money Format(用prototype对Number进行扩展) // Extend the default Number object with a formatMoney() method: // usage:
-
数字金额千位分隔的Javascript
将数字金额进行千位分隔 //将数字金额进行千位分隔 function formatNum(theObj){ var digit = theObj.value.indexOf("."); // 取得小数点的位置 var int = theObj.value.substr(0,digit); // 取得小数中的整数部分 var i; var mag = new Array(); var word; if (theObj.value.indexOf(".") == -1)
-
JavaScript 动态将数字金额转化为中文大写金额
复制代码 代码如下: function convertCurrency(currencyDigits) { // Constants: var MAXIMUM_NUMBER = 99999999999.99; // Predefine the radix characters and currency symbols for output: var CN_ZERO = "零"; var CN_ONE = "壹"; var CN_TWO = "贰"
-
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="
-
js整数字符串转换为金额类型数据(示例代码)
复制代码 代码如下: function zhen(str) { var arr_1 = ["", "\u62fe", "\u4f70", "\u4edf", "\u4e07", "\u4ebf"], arr_2 = ["", "\u4e07", "\u4ebf"]; var maskstr = arr_1.s
-
javascript将数字转换整数金额大写的方法
本文实例讲述了javascript将数字转换整数金额大写的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: function digit_uppercase(n) { var digit = [ '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' ]; var unit = [ ['元', '万', '亿'], ['', '拾', '佰', '仟'] ]; var s = ''; for (var i = 0; i < unit[
-
js下将金额数字每三位一逗号分隔
工作中很常用的东西: 例1,使数字1111111变成11,111,111.00,保留两位小数. <html> <head> <script type="text/javascript"> function outputmoney(number) { number = number.replace(/\,/g, ""); if(isNaN(number) || number == "")return "
随机推荐
- SeaJS入门教程系列之使用SeaJS(二)
- Lesson02_04 表单标签(2)
- perl 中的or与||的区别
- Excel VBA连接并操作Oracle
- 浅谈Linux内核创建新进程的全过程
- 详解Spring Boot实战之Filter实现使用JWT进行接口认证
- 史上最全最强SpringMVC详细示例实战教程(图文)
- 发个自己写的表格操作类(添加,删除,排序,上移,下移)
- 活到老学到老学习AJAX跨域(三)
- 详解Ajax跨域(jsonp) 调用JAVA后台
- nginx服务器配置解决ajax的跨域问题
- 模糊查询的通用存储过程
- MyBatis+MySQL 返回插入的主键ID的方法
- Spring+SpringMVC+MyBatis整合详细教程(SSM)
- python中os操作文件及文件路径实例汇总
- .Net项目中一些常用验证操作
- Date对象格式化函数代码
- C# 中闭包(Closure)详解
- Android实现短信验证码获取自动填写功能(详细版)
- linux中Centos7的LVM磁盘扩容问题