js金额数字格式化实现代码(加减逗号处理)

 更新时间:2014年04月02日 00:52:12   作者:  
这篇文章主要介绍了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 "";
number = Math.round(number * 100) / 100;
    if (number < 0)
        return '-' + outputdollars(Math.floor(Math.abs(number) - 0) + '') + outputcents(Math.abs(number) - 0);
    else
        return outputdollars(Math.floor(number - 0) + '') + outputcents(number - 0);
}
//格式化金额
function outputdollars(number) {
    if (number.length <= 3)
        return (number == '' ? '0' : number);
    else {
        var mod = number.length % 3;
        var output = (mod == 0 ? '' : (number.substring(0, mod)));
        for (i = 0; i < Math.floor(number.length / 3); i++) {
            if ((mod == 0) && (i == 0))
                output += number.substring(mod + 3 * i, mod + 3 * i + 3);
            else
                output += ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
        }
        return (output);
    }
}
function outputcents(amount) {
    amount = Math.round(((amount) - Math.floor(amount)) * 100);
    return (amount < 10 ? '.0' + amount : '.' + amount);
}
</script>
</head>
<body>
<input type=text   maxlength="8" id="test" onblur="this.value=outputmoney(this.value);" >
</body>
</html>


在线运行:


[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

例2,使数字1111111变成11,111,111---和使11,111,111变成1111111---整数--
 

复制代码 代码如下:

<!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="content-type" content="text/html; charset=gb2312" />
<title>js 格式化金额的代码---www.jb51.net</title>
<script language="javascript">
function tran(id)
{
  var v, j, sj, rv = "";
  v = id.value.replace(/,/g,"").split(".");
  j = v[0].length % 3;
  sj = v[0].substr(j).toString();
  for (var i = 0; i < sj.length; i++)
  {
    rv = (i % 3 == 0) ? rv + "," + sj.substr(i, 1): rv + sj.substr(i, 1);
  }
  var rvalue = (v[1] == undefined) ? v[0].substr(0, j) + rv: v[0].substr(0, j) + rv + "." + v[1];
  if (rvalue.charCodeAt(0) == 44)
  {
    rvalue = rvalue.substr(1);
  }
  id.value = rvalue;
}
function tran2(id)
{
  var v;
  v = id.value.replace(/,/g,"");
  alert(v);
}
</script>
<style type="text/css">
<!--
body,td,th,input {
 font-size: 12px;
}
-->
</style></head>
<body>
<input name="tt" type="text" id="tt" size="80" onkeyup="tran(this)" />
<br/>
<input name="tt" type="text" id="tt2" size="80" onkeyup="tran2(this)" />
</body>
</html>

运行测试:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

相关文章

  • JS实现输入框提示文字点击时消失效果

    JS实现输入框提示文字点击时消失效果

    这篇文章主要介绍了JS实现输入框提示文字点击时消失效果,涉及javascript针对鼠标的响应及事件监听机制相关技巧,需要的朋友可以参考下
    2016-07-07
  • js动态生成表格(节点操作)

    js动态生成表格(节点操作)

    这篇文章主要为大家详细介绍了js动态生成表格,进行节点操作,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-01-01
  • js实现计时器秒表功能

    js实现计时器秒表功能

    这篇文章主要为大家详细介绍了js实现计时器秒表功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • JavaScript中11种常用的hook钩子技术及示例代码

    JavaScript中11种常用的hook钩子技术及示例代码

    我们前端的JavaScript中,经常提到钩子,Hook技术又叫钩子技术,指在程序运行过程中,对其中某个方法进行重写,在原先某个方法前后加入我们自定义的代码,我们的钩子,钩子机制,钩子函数,hook,都是同一个概念,本文讲述了11种常用的hook技术及示例代码
    2024-12-12
  • RxJS的入门指引和初步应用

    RxJS的入门指引和初步应用

    这篇文章主要介绍了RxJS的入门指引和初步应用,RxJS是一个强大的Reactive编程库,提供了强大的数据流组合与控制能力,但是其学习门槛一直很高,本次分享期望从一些特别的角度解读它在业务中的使用,而不是从API角度去讲解。,需要的朋友可以参考下
    2019-06-06
  • js实现字符串转日期格式的方法

    js实现字符串转日期格式的方法

    这篇文章主要介绍了js实现字符串转日期格式的方法,涉及javascript针对字符串与日期操作的相关技巧,需要的朋友可以参考下
    2015-05-05
  • 使用Perl和库WWW::Curl的爬虫程序步骤

    使用Perl和库WWW::Curl的爬虫程序步骤

    本文给大家分享在Perl中使用WWW::Curl库编写爬虫程序的步骤和方法,感兴趣的朋友跟随小编一起看看吧
    2025-03-03
  • bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题

    bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题

    本文着重解决x-editable编辑的数据动态添加和显示数据为Empty的问题,还有给表格单元格的内容设置多样式,使得显示多样化,需要的朋友可以参考下
    2017-08-08
  • 使用JS代码实现俄罗斯方块游戏

    使用JS代码实现俄罗斯方块游戏

    这篇文章主要介绍了使用JS代码实现俄罗斯方块游戏,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • 用headjs来管理和加载js 提高网站加载速度

    用headjs来管理和加载js 提高网站加载速度

    headjs其实是一整套的工具,本文介绍的是它其中的Javascript Loader功能。需要的朋友可以参考下
    2016-11-11

最新评论