JS格式化数字金额用逗号隔开保留两位小数_javascript技巧
例如:
12345格式化为12,345.00
12345.6格式化为12,345.60
12345.67格式化为 12,345.67
只留两位小数。
回来后写了个格式化函数。可以控制小数位数,自动四舍五入。 代码如下:
function fmoney(s, n) {
n = n > 0 && n s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1];
t = "";
for (i = 0; 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> <BR>function fmoney(s, n) { <BR>n = n > 0 && n <= 20 ? n : 2; <BR>s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; <BR>var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1]; <BR>t = ""; <BR>for (i = 0; i < l.length; i++) { <BR>t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); <BR>} <BR>return t.split("").reverse().join("") + "." + r; <BR>} <BR>function rmoney(s) { <BR>return parseFloat(s.replace(/[^\d\.-]/g, "")); <BR>} <BR>function g(id) { <BR>return document.getElementById(id); <BR>} <BR>window.onload = function() { <BR>var num, txt = g("txt"), txt2 = g("txt2"), btn = g("btn"), btn2 = g("btn2"), span = g("span"); <BR>btn.onclick = function() { <BR>num = parseInt(g("num").value); <BR>txt.value = fmoney(txt.value, num); <BR>txt2.value = fmoney(txt2.value, num); <BR>}; <BR>btn2.onclick = function() { <BR>num = parseInt(g("num").value); <BR>span.innerHTML = "=" <BR>+ fmoney(rmoney(txt.value) + rmoney(txt2.value), num); <BR>}; <BR>}; <BR></script>
小数点位数:
+
附:
/*
* 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;
}
}

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

DOS命令是一种在Windows操作系统中使用的命令行工具,它可以用于执行各种系统管理任务和操作。其中一个常用的任务是格式化硬盘驱动器,包括C盘。格式化C盘是一个比较危险的操作,因为它将会清除C盘上的所有数据,并将文件系统重新初始化。在执行这个操作之前,确保你已经备份了重要的文件,并且清楚地了解格式化操作对你的计算机会产生的影响。下面是在DOS命令行中格式化

人脸检测识别技术已经是一个比较成熟且应用广泛的技术。而目前最为广泛的互联网应用语言非JS莫属,在Web前端实现人脸检测识别相比后端的人脸识别有优势也有弱势。优势包括减少网络交互、实时识别,大大缩短了用户等待时间,提高了用户体验;弱势是:受到模型大小限制,其中准确率也有限。如何在web端使用js实现人脸检测呢?为了实现Web端人脸识别,需要熟悉相关的编程语言和技术,如JavaScript、HTML、CSS、WebRTC等。同时还需要掌握相关的计算机视觉和人工智能技术。值得注意的是,由于Web端的计

如何使用PHP和JS创建股票蜡烛图股票蜡烛图是股票市场中常见的一种技术分析图形,通过绘制股票的开盘价、收盘价、最高价和最低价等数据,帮助投资者更直观地了解股票的价格波动情况。本文将教你如何使用PHP和JS创建股票蜡烛图,并附上具体的代码示例。一、准备工作在开始之前,我们需要准备以下环境:1.一台运行PHP的服务器2.一个支持HTML5和Canvas的浏览器3

股票分析必备工具:学习PHP和JS绘制蜡烛图的步骤,需要具体代码示例随着互联网和科技的快速发展,股票交易已经成为许多投资者的重要途径之一。而股票分析是投资者决策的重要一环,其中蜡烛图被广泛应用于技术分析中。学习如何使用PHP和JS绘制蜡烛图将为投资者提供更多直观的信息,帮助他们更好地做出决策。蜡烛图是一种以蜡烛形状来展示股票价格的技术图表。它展示了股票价格的

现如今,无法开机等,卡顿,我们难免会遇到一些问题,比如系统崩溃、但在使用过程中、手机已成为我们生活中不可或缺的一部分。我们往往束手无策、而有时、对于这些问题的解决方法。帮助你解决手机故障,本文将为大家介绍一些手机格式化恢复的方法、让手机重新恢复正常运行。备份数据——保护重要信息安全通讯录等,如照片、联系人、以免在格式化过程中丢失、在进行手机格式化之前、首先要考虑的是备份手机上的重要数据和文件。确保数据的安全性、或者选择将文件传输至云存储服务中,可以通过连接电脑进行备份。使用系统自带恢复功能——简

如何解决0x80070057错误:简单有效的方法与步骤引言:在使用计算机的过程中,我们有时会遇到各种各样的错误代码。其中,0x80070057是一个非常常见的错误代码,它通常与Windows操作系统相关。这个错误代码可能出现在不同的情况下,例如在安装或更新操作系统、备份或还原文件以及格式化驱动器时等。尽管这个错误代码很令人沮丧,但它并不是无法解决的。本文将介

格式化笔记本电脑会使其速度更快吗?如果您想格式化您的Windows笔记本电脑,但想知道它是否会使速度更快,本文将帮助您了解这个问题的正确答案。格式化笔记本电脑会使其速度更快吗?用户格式化Windows笔记本电脑的原因有很多。但最常见的原因是笔记本电脑的性能或速度缓慢。格式化笔记本电脑会彻底删除C盘或安装Windows操作系统的硬盘分区上存储的所有数据。因此,每个用户在采取这一步之前都会三思而后行,尤其是在笔记本电脑的性能方面。本文将帮助您了解格式化笔记本电脑是否会加快速度。格式化笔记本电脑有助于

在使用电脑的时候很多时候都会遇到垃圾过多的情况,但是很多的用户还不知道电脑怎么格式化,没关系,下面就给你们大家带来了电脑格式化的教程一起看看吧。电脑怎么格式化:1、右击桌面的“此电脑”点击“管理”。2、在“计算机管理”中点击“存储”打开“磁盘管理”。3、选择自己要清理的硬盘右击选择“格式化”。4、勾选“执行快速格式化”并点击“确定”即可开始格式化。
