例如: 
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, "")).toFixed(n) + "";var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1];t = "";for (i = 0; i < l.length; i++) {t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");}return t.split("").reverse().join("") + "." + r;
}

调用:fmoney("12345.675910", 3),返回12,345.676 
还原函数:

function rmoney(s) {return parseFloat(s.replace(/[^\d\.-]/g, ""));
}

示例(可保存一下代码为html文件,运行查看效果):

<SCRIPT>
function fmoney(s, n) {n = n > 0 && n <= 20 ? n : 2;s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1];t = "";for (i = 0; i < l.length; i++) {t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");}return t.split("").reverse().join("") + "." + r;
}
function rmoney(s) {return parseFloat(s.replace(/[^\d\.-]/g, ""));
}
function g(id) {return document.getElementById(id);
}
window.onload = function() {var num, txt = g("txt"), txt2 = g("txt2"), btn = g("btn"), btn2 = g("btn2"), span = g("span");btn.onclick = function() {num = parseInt(g("num").value);txt.value = fmoney(txt.value, num);txt2.value = fmoney(txt2.value, num);};btn2.onclick = function() {num = parseInt(g("num").value);span.innerHTML = "="+ fmoney(rmoney(txt.value) + rmoney(txt2.value), num);};
};
</SCRIPT>
小数点位数:
<select id="num">
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input type="text" id="txt" value="12345.675910"> +
<input type="text" id="txt2" value="1223"> <span id="span"></span>
<br>
<input type="button" id="btn" value="格式化">
<input type="button" id="btn2" value="相加"> 

附:

/** formatMoney(s,type)* 功能:金额按千位逗号分割* 参数:s,需要格式化的金额数值.* 参数:type,判断格式化后的金额是否需要小数位.* 返回:返回格式化后的数值字符串.*/
function formatMoney(s, type) {if (/[^0-9\.]/.test(s))return "0";if (s == null || s == "")return "0";s = s.toString().replace(/^(\d*)$/, "$1.");s = (s + "00").replace(/(\d*\.\d\d)\d*/, "$1");s = s.replace(".", ",");var re = /(\d)(\d{3},)/;while (re.test(s))s = s.replace(re, "$1,$2");s = s.replace(/,(\d\d)$/, ".$1");if (type == 0) {// 不带小数位(默认是有小数位)var a = s.split(".");if (a[1] == "00") {s = a[0];}}return s;
}
/** 通用DateAdd(interval,number,date) 功能:实现javascript的日期相加功能.* 参数:interval,字符串表达式,表示要添加的时间间隔. 参数:number,数值表达式,表示要添加的时间间隔的个数. 参数:date,时间对象.* 返回:新的时间对象. var now = new Date(); var newDate = DateAdd("day",5,now);* author:devinhua(从○开始) update:2010-5-5 20:35*/
function DateAdd(interval, number, date) {if (date == null)return "";switch (interval) {case "day":date = new Date(date);date = date.valueOf();date += number * 24 * 60 * 60 * 1000;date = new Date(date);return date;break;default:return "";break;}
}

JS 数字,金额 用逗号 隔开(数字格式化)相关推荐

  1. java中如何在键盘中输入一串以逗号隔开数字然后存入数组中,并输出。

    /***项目:java中如何在键盘中输入一串以逗号隔开数字然后存入数组中,并输出.*时间:2019/8/16*作者:郑翰林*/ import java.util.Scanner; public cla ...

  2. 输入几个数字,用逗号隔开系列例题

    输入n个数字,用逗号分隔 处理过程如下: char str[100]; char ch = '\0'; int i = 0; vector<int> v; int tmp = 0; cin ...

  3. js 数字,金额 用逗号 隔开。数字格式化

    例如: 12345格式化为12,345.00 12345.6格式化为12,345.60 12345.67格式化为 12,345.67 只留两位小数. 回来后写了个格式化函数.可以控制小数位数,自动四舍 ...

  4. JS 数字,金额用逗号隔开

    例如:  12345格式化为12,345.00  12345.6格式化为12,345.60  12345.67格式化为 12,345.67  只留两位小数.  回来后写了个格式化函数.可以控制小数位数 ...

  5. 【数据格式化】数字货币加逗号隔开

    不辜负曾经那份热爱 工作中经常遇到数据格式化处理, 例如:12345.89转为12,345.89:-12345.89转为-12,345.89: 避免每次都需要重新测试重新写,在此做一下整理,方便后期查 ...

  6. java 逗号分隔数字_java程序 输入n个数字,以逗号隔开,然后升序排列,再重新输出...

    展开全部 思路如下:e68a84e8a2ad3231313335323631343130323136353331333337616534 1,录入字符串 2,使用正则表达式分割 3,转换为int数组 ...

  7. 数字金额转换为大写金额python_python 数字转换为大写

    在会计的时候,用到将数字转换为大写,也就是讲数字转为汉字 外汇出入金流程https://www.fx61.com/supportclass cnumber: cdict = {} gdict = {} ...

  8. html将字符串按逗号分隔,js如何截取以逗号隔开的字符串

    使用string对象的split()方法能够处理.正则表达式 定义: split() 方法用于把一个字符串分割成字符串数组.数组 使用方法以下:cdn stringObject.split(separ ...

  9. js和 ts 将大数字金额转换成带单位的数字金额,万,千万,亿,格式化金额数字,格式化成带单位的金额,附ts版代码

    js将大数字金额转换成带单位的数字金额,万,千万,亿, 第一个参数是在转换的数字, 第二个参数是返回的格式 不传第二个参数,返回数字和单位分开的,数组格式,传第二个参数后,返回数组和单位的字符串,这样 ...

  10. BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)

    一.简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更 ...

最新文章

  1. 皮一皮:你更想成为哪个身材...
  2. Openfire3.9.3源代码导入eclipse中开发配置指南
  3. PAT甲级1013 Battle Over Cities:[C++题解]并查集、结构体存边
  4. 四大价值观和12准则
  5. java基础——java基本运算
  6. MySQL之IFNULL()、ISNULL、NULLIF用法
  7. Python 学习笔记9(装饰器,decorator)
  8. C ++ 内存 | C/C++的动态内存管理_1
  9. Linux下如何用pxe安装虚拟机?
  10. Confluence 6 配置索引语言
  11. python程序员工资-均薪3万?Python程序员就业各岗位薪资一览,你拖后腿了吗?...
  12. 关于ScreenToClient
  13. 专利审查意见通知书中对比文件对应字母X、Y、A、R、P、E代表的含义
  14. win10u盘被写保护怎么解除_win10怎么取消u盘写保护|win10关闭u盘写保护方法
  15. 5种Alexa世界排名作弊方式
  16. Python-贪心算法 田忌赛马
  17. 数据结构考研复习(详细指导)(持续更新中)
  18. 电脑本机连了VPN 在虚拟机中没有连接 如何虚拟机共享主机VPN连接
  19. 详解:海盗分赃(25 分)
  20. 云看板生产管理系统,实时监控网关采集的数据

热门文章

  1. css动画设置运动轨迹,css3动画之圆形运动轨迹
  2. github如何开启两步验证
  3. scrapy框架的解析
  4. 开课吧mysql课件百度云_开课吧第四期Web全栈课程分享
  5. mysql按升序创建索引_MySQL 降序索引 (Descending Indexes)
  6. 运用深度学习进行文本生成
  7. HTML5CSS3:Day03 2D动画 3D动画 CSS3过渡
  8. 网络传输大端序_大端 小端和网络字节序说明
  9. 关于“长尾理论”(The Long Tail)
  10. 联想昭阳E43闪屏|屏幕有亮线|问题交流QQ群群号