<!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. 52.JQ---向上滚动显示,向下滚动隐藏

    js: var windowTop = 0;$(window).scroll(function() { var scrolls = $(this).scrollTop(); if(scrolls &l ...

  2. reactjs中使用高德地图计算两个经纬度之间的距离

    第一步下载依赖 npm install --save react-amap 第二步,在组件中使用 import React, { Component } from 'react' import { L ...

  3. C#:进程

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...

  4. Django框架详细介绍---request对象

    几个重要的函数 1.HttpRequest.get_host() 根据从HTTP_X_FORWARDED_HOST(如果打开 USE_X_FORWARDED_HOST,默认为False和 HTTP_H ...

  5. GDScript 格式化字符串

    GDScript offers a feature called format strings, which allows reusing text templates to succinctly c ...

  6. property装饰器以及多态

    property是一种特殊的属性 访问它时执行一段功能然后返回值 class People: def __init__(self, name): self.__name = name @propert ...

  7. PostgreSQL在Update时使用Substring函数截取字符串并且加上CASE WHEN THEN条件判断

    --更新 UPDATE wp_order_detail SET layout_type = ( SELECT CASE THEN ) ELSE '' END FROM wp_catalog_size ...

  8. mybatis 查询优化主子表查询之association和collection

    很多开发人员之所以编写出低效的应用,有一大原因是并不理解怎样编写高效的SQL.以订单查询为例,我们经常需要查询某个用户的订单以及订单明细,并且以树形方式展现如下: 对于这种性质的功能,很多开发人员的做 ...

  9. ★Pandas 零碎知识

    1 修改属性 1.1 修改1列的类型属性: df['总金额'] = pd.to_numeric(df['总金额']) #转变dataframe的1列为数值型 1.2 多列设为数值型:(使用DataFr ...

  10. 数据库分区分表(sql、mysql)

    http://blog.csdn.net/lgb934/article/details/8662956 http://www.2cto.com/database/201503/380348.html ...