javascript 判断整数方法分享

  判断整数的方法有两种:正则判断和逐字判断。

  由于逐字判断效率过于低下,这里就不予描述了,有兴趣的看客可以自己谷歌。

  1.正则判断

  

复制代码 代码如下:

  var r = /^\+?[1-9][0-9]*$/;  //正整数

  console.log(r.test(1.23));

  效果测试:

  http://jsfiddle.net/wzsdp9Lc/

  扩展功能列表

  

复制代码 代码如下:

  "^\\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 num=1.23;

  if (parseInt(num) != num) {

  console.log(num+"为非整数");

  }

  else{

  console.log(num+"为整数");

  }

  效果测试

  http://jsfiddle.net/euvn0L1g/1/