Javascript 正则表达式实现为数字添加千位分隔符


Posted in Javascript onMarch 10, 2015

最近在网上有看到使用js来实现数字的千位分隔符的面试(笔试)题,所以就自己写了一个利用“正则+replace”来实现的方法:  

 var thousandBitSeparator = function(numStr){

     var b = /([-+]?\d{3})(?=\d)/g;

     return numStr.replace(b, function($0, $1){

         return $1 + ',';

     });

 }

支持正负号匹配,小数点区分,如有错误,希望大大们指出:-D

附上一个其他网友的实现方法

<script language="JavaScript" type="text/javascript">  

function formatNumber(num){  

 if(!/^(\+|-)?(\d+)(\.\d+)?$/.test(num)){  

  return num;  

 }  

 var a = RegExp.$1,b = RegExp.$2,c = RegExp.$3;  

 var re = new RegExp().compile("(\\d)(\\d{3})(,|$)");  

 while(re.test(b)){  

  b = b.replace(re,"$1,$2$3");  

 }  

 return a +""+ b +""+ c;  

}  

var num=1234567/3;  

alert("num="+num+",四舍五入:"+Math.round(num)+",两位有效数字:"+num.toFixed(2)+",添加千位分隔符:"+formatNumber(num));  

</script> 

以上就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
javascript学习笔记(七) js函数介绍
Jun 19 Javascript
js post提交调用方法
Feb 12 Javascript
jquery实现导航固定顶部的效果仿蘑菇街
Oct 22 Javascript
jquery实现焦点图片随机切换效果的方法
Mar 12 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
May 24 Javascript
JS中Swiper的使用和轮播图效果
Aug 11 Javascript
js + css实现标签内容切换功能(实例讲解)
Oct 09 Javascript
Vue.js添加组件操作示例
Jun 13 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
详解微信小程序与内嵌网页交互实现支付功能
Oct 22 Javascript
vue自定义指令用法经典实例小结
Mar 16 Javascript
实现一个简单得数据响应系统
Nov 11 Javascript
jquery+easeing实现仿flash的载入动画
Mar 10 #Javascript
javascript判断css3动画结束 css3动画结束的回调函数
Mar 10 #Javascript
jQuery实现表格颜色交替显示的方法
Mar 09 #Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 #Javascript
jQuery实现可用于博客的动态滑动菜单
Mar 09 #Javascript
JQuery操作元素的css样式
Mar 09 #Javascript
jQuery实现仿美橙互联两级导航菜单的方法
Mar 09 #Javascript
You might like
PHP伪静态页面函数附使用方法
2008/06/20 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
CI框架出现mysql数据库连接资源无法释放的解决方法
2016/05/17 PHP
用javascript父窗口控制只弹出一个子窗口
2007/04/10 Javascript
XmlUtils JS操作XML工具类
2009/10/01 Javascript
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
文本框水印提示效果的简单实现代码
2014/02/22 Javascript
jquery+php随机生成红包金额数量代码分享
2015/08/27 Javascript
分享10个优化代码的CSS和JavaScript工具
2016/05/11 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
如何抽象一个Vue公共组件
2017/10/17 Javascript
ES6 javascript中class类的get与set用法实例分析
2017/10/30 Javascript
Angular 项目实现国际化的方法
2018/01/08 Javascript
jQuery实现的简单歌词滚动功能示例
2019/01/07 jQuery
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
vue 使用 canvas 实现手写电子签名
2020/03/06 Javascript
通过滑动翻页效果实现和移动端click事件问题
2021/01/26 Javascript
python实现在目录中查找指定文件的方法
2014/11/11 Python
Python通过正则表达式选取callback的方法
2015/07/18 Python
python的staticmethod与classmethod实现实例代码
2018/02/11 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
Python绘制并保存指定大小图像的方法
2019/01/10 Python
python的链表基础知识点
2020/09/13 Python
HTML5拖拽的简单实例
2016/05/30 HTML / CSS
台湾旅游网站:雄狮旅游网
2017/08/16 全球购物
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
Feelunique德国官方网站:欧洲最大的在线美容零售商
2019/07/20 全球购物
文明餐桌活动方案
2014/02/11 职场文书
员工试用期考核自我鉴定
2014/04/13 职场文书
十月围城观后感
2015/06/08 职场文书
升学宴学生致辞
2015/09/29 职场文书
springboot中一些比较常用的注解总结
2021/06/11 Java/Android
Spring整合Mybatis的全过程
2021/06/28 Java/Android
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers