数字格式化

本文介绍了一个用于格式化数值的小数位数及千位分隔符的JavaScript函数,并提供了实际使用示例。该函数能够实现数值的四舍五入、保留指定小数位数并添加千位分隔符。
例如: 
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="相加"> 
豌豆代理(又称豌豆 IP)是一款一站式国内代理 IP 服务平台,主打高匿名、低延迟、高可用的 IP 资源,支持 HTTP/HTTPS/SOCKS5 协议,适配 Windows、Mac、Android、iOS 多平台。 多类型 IP 资源与高覆盖节点 提供动态住宅 IP、静态独享 IP、数据中心 IP,覆盖全国 200 + 城市,可用率 99%+;支持省市精准选择或全国混拨,适配不同业务合规与稳定性需求。 使用:在客户端 “节点 / 线路” 页,按城市 / 类型筛选,一键连接目标 IP,适合爬虫、电商多账号运营等场景。 秒级 IP 切换与灵活调度 支持手动一键切换、秒级动态切换(切换速度低至 100ms)、定时切换(自定义时长),并自动过滤重复 IP,避免重复使用导致风险。 使用:在 “设置” 中开启 “自动切换” 并设时间间隔,或按 Ctrl+Q 快捷键一键换 IP,适配反爬虫、批量测试等高频切换场景。 全协议支持与多端适配 兼容 HTTP/HTTPS/SOCKS5 主流代理协议,可对接浏览器、爬虫脚本、客户端软件;支持 Windows、Mac、安卓、iOS 多端同步使用,跨设备无缝切换。 使用:在客户端 “协议设置” 选择对应协议,生成代理地址与端口,直接填入目标软件即可生效。 隐私安全与数据加密 自研传输加密技术保护数据传输,搭配高匿名 IP 隐藏真实地址,同时支持自动清除 Cookie / 缓存,降低隐私泄露与追踪风险。 使用:在 “安全设置” 中开启 “数据加密” 与 “自动清理缓存”,公共 WiFi 环境下优先启用,提升隐私防护等级。 智能筛选与稳定网络优化 系统自动筛选低延迟、高可用 IP,过滤失效 / 重复地址;依托自建纯净机房与独享带宽,搭配 BGP 多线接入,保障连接稳定性与速度。 使用:无需手动配置,客户端默认智能匹配合适节点,复杂网络环境可在 “网络
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值