使用下面给出的函数可实现千分符支持正负数:
function comma(num) {var source = String(num).split(".")//按小数点分成2部分
source[0] = source[0].replace(new RegExp('(\\d)(?=(\\d{3})+$)','ig'),"$1,")//只将整数部分进行都好分割
return source.join(".")//再将小数部分合并进来
}
comma(-123456.789)//-123,456.789
最近一个小妹妹问我前端问题,怎样在页面上只让用户输入数字呢,但包含负数。其实这类的问题想到的肯定是正则表达式啊,很简单的,
思想就是:在键盘弹起的时候调用函数控制这个input的标签的value可输入的内容就ok了,在失去焦点的时候调用下可以哒。是不是超级简单~~~
到底需要匹配哪些数字?正整数:^[1-9]\d*$
正数:^(?:0\.\d*[1-9]|[1-9]\d*(?:\.\d*[1-9])?)$
非负整数:^(?:0|[1-9]\d*)$
非负数:^(?:0|[1-9]\d*)(?:\.\d*[1-9])?$
整数:^(?:0|\-?[1-9]\d*)$
实数:^(?:0|\-?(?:0\.\d*[1-9]|[1-9]\d*(?:\.\d*[1-9])?))$