求一个验证是否是正整数的js自定义函数

JavaScript015

求一个验证是否是正整数的js自定义函数,第1张

//正整数

function isPInt(str) {

    var g = /^[1-9]*[1-9][0-9]*$/

    return g.test(str)

}

//整数

function isInt(str)

{

    var g=/^-?\d+$/

    return g.test(str)

}

用正则表达式。

1、int()将指数转换为10进制演示:>>>a=2e8>>>print(int(a) ) 200000000。

2、int()将小数转换为10进制演示:int(小数),取整数部分,与四舍五入不同。

3、int()将运算式转换为10进制演示:int(a+b-d*e+f/g),系统会自行计算运算结果,然后取结果的整数部分。

4、int()函数将二进制字符串转为10进制整数演示:int(字符串,base=2)。

5、int()函数将八进制字符串转为10进制整数演示:int(字符串,base=8)。

6、int()函数将十六进制字符串转为10进制整数演示:int(字符串,base=16)。在python中,十六进制字母大小写可混用。

办法,使用parseInt(var i)强制转型。

因为js中变量是可以任意赋值的(不用担心类型),但是int型一旦被改为字符串后,在调用int的加法运算时,就会变成了字符串的连接运算。如下所示:

<script language="javascript">

<!--

var i=1

alert(i+1)//结果为2

var j="1"

alert(j+1)//结果为11

//-->

</script>

此时如果想要将j转换为int并且执行加法,需要将j强制转换为int,具体方法如下:

alert(parseInt(j)+1)

此时的结果就会是2了。