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 相关文章推荐
js select常用操作控制代码
Mar 16 Javascript
禁止js文件缓存的代码
Apr 09 Javascript
jQuery '行 4954 错误: 不支持该属性或方法' 的问题解决方法
Jan 19 Javascript
JS HTML5 音乐天气播放器(Ajax获取天气信息)
May 26 Javascript
JS delegate与live浅析
Dec 21 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
Sep 25 Javascript
JQuery实现动态添加删除评论的方法
May 18 Javascript
JS+CSS实现随机点名(实例代码)
Nov 04 Javascript
浅谈vue 锚点指令v-anchor的使用
Nov 13 Javascript
js键盘事件实现人物的行走
Jan 17 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
Mar 23 Javascript
JS字符串补全方法padStart()和padEnd()
May 27 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
MongoDB在PHP中的常用操作小结
2014/02/20 PHP
php中遍历二维数组并以表格的形式输出的方法
2017/01/03 PHP
PHP哈希表实现算法原理解析
2020/12/11 PHP
jQuery数据缓存功能的实现思路及简单模拟
2013/05/27 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
JavaScript实现的encode64加密算法实例分析
2015/04/15 Javascript
jQuery插件pagewalkthrough实现引导页效果
2015/07/05 Javascript
JS实现支持多选的遍历下拉列表代码
2015/08/20 Javascript
jquery实现可关闭的倒计时广告特效代码
2015/09/02 Javascript
jQuery过滤特殊字符及JS字符串转为数字
2016/05/26 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
2016/08/18 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
JavaScript 五大常见函数
2018/03/23 Javascript
vue非父子组件通信问题及解决方法
2018/06/11 Javascript
vue过滤器用法实例分析
2019/03/15 Javascript
layui table 获取分页 limit的方法
2019/09/20 Javascript
JavaScript的console命令使用实例
2019/12/03 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
Python 使用os.remove删除文件夹时报错的解决方法
2017/01/13 Python
Python读写文件基础知识点
2019/06/10 Python
python opencv调用笔记本摄像头
2019/08/28 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
Pycharm 2019 破解激活方法图文详解
2019/10/11 Python
python在CMD界面读取excel所有数据的示例
2020/09/28 Python
多个版本的python共存时使用pip的正确做法
2020/10/26 Python
中专生学习生活的自我评价分享
2013/10/27 职场文书
公司离职证明范本
2014/01/13 职场文书
八达岭长城导游词
2015/01/30 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
小学教师读书笔记
2015/07/01 职场文书
小学生一年级(书信作文)
2019/08/13 职场文书
教你利用python实现企业微信发送消息
2021/05/23 Python
千万级用户系统SQL调优实战分享
2022/03/03 MySQL
Python pyecharts绘制条形图详解
2022/04/02 Python