本章节介绍一下如何判断一个变量是否是数字,这在实际应用中有着比较实际的用处。实现的方法有很多,这里就给出比较常见的两种,希望有需要的朋友可以做一下借鉴,直接看代码。

代码实例:

实例一:
   [ 其他 ] 运行代码    下载代码
<script>
var a="12";
var b=12;
function done(num) {
  return (typeof num === 'number') && (num % 1 === 0);
}
console.log(done(a));
console.log(done(b));
</script>
返回值是true,则说明参数是整数,如果返回值是false,则说明参数不是整数,下面介绍一下它的原理。

typeof num === 'number'可以判断是否是数值类型,如果不是,则直接返回false,但是这还不够,因为还存在着浮点数的可能,num % 1 === 0这个求余运算,只有整数和1求余返回值是0。

实例二:
   [ 其他 ] 运行代码    下载代码
<script>
var a="12";
var b=12;
function done(num) {
  return Math.round(num) === num;
}
console.log(done(a));
console.log(done(b));
</script>
上面的代码也可以完美的实现我们的要求,也非常的巧妙,Math.round()函数可以将数字转换为整数,对于数字字符串也是如此,经过转换之后如果还和最初传递的值相同,那么就可以说明它是整数。

最后完善:

上面的代码还是有一个缺陷,如果参数传递的是一个Number对象的话,就不能进行正确判断了,下面对代码进行一下改善。

代码如下:
   [ 其他 ] 运行代码    下载代码
<script>
var a="12";
var b=12;
var obj=new Number(13);
function done(num){
  if(Object.prototype.toString.call(num).slice(8,-1)=="Number"){
    if(num.toString()%1===0){
      return true;
    }
  }
  return false;
}
console.log(done(a));
console.log(done(b));
console.log(done(obj));
</script>

代码描述:javascript判断变量 是否是整数。javascript判断变量是否是整数代码下载



153 203



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到