<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>格式化数字</title>
</head>
<body>
<script type="text/javascript">
/**
方法一 不加千分位(整数部分最大15位,小数为最多4位)
object --文本框对象
n --保留的小数位
*/
function fmoney(object,n){
// ^-?[0-9]+\.?[0-9]*$ 验证浮点数
var num = object.value;
var start = num.indexOf('-');
if(start == 0){
num = num.substring(1,15);
}else{
num = num.substring(0,15);
}
num = parseFloat((num + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
if (isNaN(num) || ((num + "").replace(/\s/g, "")) == "") {
object.value = "";
return;
}
n = n > 0 && n <= 20 ? n : 2;
var l = num.split(".")[0].split("").reverse(),r = num.split(".")[1],t = "";
for(var i = 0; i < l.length; i ++ ){
//t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); //加千分位
t += l[i];
}
if(start == 0){
object.value = "-"+t.split("").reverse().join("") + "." + r;
}else{
object.value = t.split("").reverse().join("") + "." + r;
}
}
/**
方法二 加千分位 (整数部分最大15位)
object --文本框对象
n --保留的小数位
*/
function simpleFormat(object,n){
var num = object.value;
num = num.substring(0,15);
num = parseFloat((num + "").replace(/[^\d\.-]/g, "")).toFixed(n)+"";
if (isNaN(num) || ((num + "").replace(/\s/g, "")) == "") {
object.value = "";
return;
}
object.value = num;
var value = num.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,")
object.value = value;
}
function rmoney(s){
return parseFloat(s.replace(/[^\d\.-]/g, ""));
}
</script>
<input type="text" id="11" style="width:200px" onblur='fmoney(this,4)'/><input type="button" value="还原" onclick="r11()"><br>
<input type="text" id="33" style="width:200px" onblur='simpleFormat(this,4)'/><input type="button" value="还原" onclick="r33()">
<script type="text/javascript">
function r11(){
var value = document.getElementById("11").value;
alert(rmoney(value));
}
function r33(){
var value = document.getElementById("33").value;
alert(rmoney(value));
}
</script>
</body>
</html>

js格式化数字的更多相关文章

  1. js 格式化数字,格式化金额:

    js 格式化数字,格式化金额: function number_format(number, decimals, dec_point, thousands_sep) { /* * 参数说明: * nu ...

  2. JS格式化数字金额用逗号隔开保留两位小数

    JS格式化金额,正则方式修改. /** * 格式化金额 * @param {[type]} v [要转换的数字] * @param {[type]} len [小数点位数,默认2位] * @param ...

  3. 自定义编写js格式化数字的函数

    在处理网页的时候,有时候会需要显示很长的数字,但是当数字的长度比较长的时候,就很难看一个数字到底是多大.这种情况下,一些网站在处理数字的时候,当数字的长度大于3个时,就用逗号把他们分开,这是一个比较常 ...

  4. JS格式化数字保留两位小数点示例代码

    格式化数字保留两位小数点实现的方法有很多,在接下来的文章中将为大家详细介绍下如何使用js来实现 a = a.toFixed(2);//保留2位但结果为一个String类型 a = parseFloat ...

  5. js格式化数字和金额

    格式化数字,格式化金额: function number_format(number, decimals, dec_point, thousands_sep) { /* * 参数说明: * numbe ...

  6. js 格式化数字

    http://www.jb51.net/article/61585.htm 这篇文章主要介绍了JS实现的4种数字千位符格式化方法分享,本文给出了4种千分位格式化方法并对它们的性能做了比较,需要的朋友可 ...

  7. js格式化数字,金额按千位逗号分隔,负号用括号

    // 返回数字 function removeFormatMoney(s) { s = s.toString().replace("(","-").replac ...

  8. js格式化数字 金额按千位逗号分隔

    // 返回数字 function removeFormatMoney(s) { return parseFloat(s.replace(/[^\d\.-]/g, "")); } / ...

  9. js 格式化数字(每三位加逗号)

    // 方法一 unction toThousands(num) { var result = [ ], counter = 0; num = (num || 0).toString().split(' ...

随机推荐

  1. idea快捷键使用

    idea                                 eclipse project                           workspace module     ...

  2. Software Testing 3

    Questions: • 7. Use the following method printPrimes() for questions a–d. 基于Junit及Eclemma(jacoco)实现一 ...

  3. 数据模型model设置、生成数据迁移文件、执行数据迁移文件

    一.model的配置 1.创建数据库 2.安装pymysql 3.修改配置文件 数据库连接配置 DATABASES = {'default': {'ENGINE': 'django.db.backen ...

  4. The Designer (笛卡尔定理+韦达定理 || 圆的反演)

    Nowadays, little haha got a problem from his teacher.His teacher wants to design a big logo for the ...

  5. Internet spirit

    互联网思维精髓总结为 :1.用户思维:2.简约思维:3.极致思维:4.迭代思维:5.流量思维:6.社会化思维:7.大数据思维:8.平台思维:9.跨界思维.

  6. .net core webapi+vue 跨域访问

    最近在做一个前后端分离的示例,以下代码完美解决跨域的问题 一.后端服务 1.首先我们建一个.net core webapi的项目 2.项目引用Microsoft.AspNetCore.Cors 包 3 ...

  7. C++ 打印机设置

    我在网上已不断看到一些网友关于自定义纸张打印的问题,基本上还没有较完美的解决方案,我在这里提供一个WindowsNT/2000/XP下的解决办法,供广大同仁参考.Windows9x/Me下也有解决办法 ...

  8. Linux 系统状态、常用快捷键

    1.查看系统状态 ()df -h #查看分区状态. ()mount #查看文件系统类型. ()du -h -max-depth= 目录名 #查看目录文件大小,批量查找. ()du -sh #查看目录文 ...

  9. Shell 变量、脚本参数

    定义变量:可将脚本或者多个命令定义成一个变量. ()格式n(){脚本命令}. 脚本常用参数 命令:seq –w 0 23 #以01开头往上的. 命令:echo –ne #输出n换行,e扩展. 命令:b ...

  10. jsp/servlet学习三之会话管理初解

    由于http的无状态性,使得会话管理或会话跟踪成为web应用开发一个无可避免的主题.默认下,一个web服务器无法区分一个http请求是否为第一次访问.例如,一个web邮件应用要求用户登陆后才能查看邮件 ...