JavaScript 中可以使用正则表达式来判断是否浮点数. 如 "^(-?//d+)(//.//d+)?$" 可以判断是否是浮点数,"^//d+(//.//d+)?$" 可以判断是否非负浮点数等.
JavaScript 中检查是否是浮点数的方法详解如下:
首先是判断是不是数字 isNaN()
- var s = $(this).val();
- if(isNaN(s)) {
- alert("不是数字");$(this).focus()
- }
JavaScript 中判断浮点数的正则表达式:
- "^//d+(//.//d+)?$" // 非负浮点数 (正浮点数 + 0)
- "^(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*))$" // 正浮点数
- "^((-//d+(//.//d+)?)|(0+(//.0+)?))$" // 非正浮点数 (负浮点数 + 0)
- "^(-(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*)))$" // 负浮点数
- "^(-?//d+)(//.//d+)?$" // 浮点数
在程序中的使用方法
- var r = /^[0-9]*[1-9][0-9]*$/ // 正整数
- r.test(str); //str 为你要判断的字符 执行返回结果 true 或 false
函数应用
- function TestRgexp(re, s){ // 参数说明 re 为正则表达式 s 为要判断的字符
- return re.test(s)
- }
- var re = /^[0-9]*[1-9][0-9]*$/ ;
- // 判断是否是正整数 注: 程序中正则表达式格式: / 上面的正则表达式 (不带双引号)/
- var s = prompt("请输入要判断的字符" , 10) ;
- var result = TestRgexp(re , s); // 测试 返回 true 或 false
- alert(result);
来源: http://www.css88.com/qa/javascript/11168.html