JS判断是否为数字,是否为整数,是否为浮点数

JavaScript06

JS判断是否为数字,是否为整数,是否为浮点数,第1张

正则表达式方法function checkRate(input){var re = /^[0-9]+.?[0-9]*$///判断字符串是否为数字 //判断正整数 /^[1-9]+[0-9]*]*$/ if (!re.test(input.rate.value)){alert("请输入数字(例:0.02)")input.rate.focus()return false}}下面为普通函数写法function BASEisNotNum(theNum){//判断是否为数字if (BASEtrim(theNum)=="")return truefor(var i=0i1 &&theInt.substring(0,1)=="0") || BASEisNotNum(theInt)){return true}return false}function BASEisNotFloat(theFloat){//判断是否为浮点数len=theFloat.lengthdotNum=0if (len==0)return truefor(var i=0i1)return true}if (len>1 &&theFloat.substring(0,1)=="0"){if (theFloat.substring(1,2)!=".")return true}return falseisNaN 函数isNaN(expression:Object) : Boolean计算参数,如果值为 NaN(非数字),则返回 true。此函数可用于检查一个数学表达式是否成功地计算为一个数字。可用性:Flash Player 5;ActionScript 1.0参数expression:Object - 要计算的布尔值、变量或其它表达式。返回Boolean - 一个布尔值。例子:if(isNaN(document.login.imgcode.value)){alert('验证码必须是数字!')

1.下面列出了一些判读数值类型的正则表达式 "^//d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-//d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?//d+$" //整数 "^//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+)?$" //浮点数

2.在程序中的使用方法

var r =/^[0-9]*[1-9][0-9]*$/ //正整数 r.test(str)//str为你要判断的字符执行返回结果 true 或 false

3. 测试正则的一个函数,可以用来判断 数字 字符 日期 Email 的 js函数

function TestRgexp(re, s){ // 参数说明 re 为正则表达式 s 为要判断的字符

return re.test(s)}

4. 函数应用

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)5.使用范例 HTML代码<script. type="text/javascript">function TestRgexp(re, s){ // 参数说明 re 为正则表达式 s 为要判断的字符

return re.test(s)}var re = /^[0-9]*[1-9][0-9]*$/ //判断是否是正整数 <span style="color:Red">注:程序中正则表达式格式: /上面的正则表达式(不带双引号)/</span>

var s = prompt("请输入要判断的字符" , 10) var result = TestRgexp(re , s)//测试 返回true或false<script>

function a(string_value){var type= "^/s*[+-]?[0-9]+/s*$ "

<html>

<head>

<title>JS Example</title>

<script type="text/javascript">

<!-- // 函数功能:判断对象值是否为非负浮点数(两位小数)

function isFloat(objID) {

var obj=document.getElementById(objID)

var data=obj.value

var result=false

if(typeof data!='undefined') {

// 正则表达式 匹配 非负浮点数,小数点后最多两位小数

if(data.match(/^\+{0,1}\d+(\.\d{1,2})?$/)!=null){

result=true }

}

alert(result) // 测试结果,不需要的时候请注释掉

return result

}

-->

</script>

<head>

<body> <input type="text" id="dataText" value="123"/>

<input type="button" value="判断文本框中为非负浮点数" onclick="isFloat('dataText')"/>

</body>

</html>