JavaScript中怎么判断isNumber(),很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
js判断变量isNumber方法有哪些
方法一:
最容易想到的是用typeof来判断是否是number类型,但是如果为NaN会被认为也是number类型,因此我们需要使用isNaN来排除NaN的情况。
functionisNumber(obj){
returntypeofobj==='number'&&!isNaN(obj)
}
方法二:
isNaN(obj)等价于isFinite()。Infinity在js表示数字的无穷大,判断是否可用做数字的最佳方法则是isFinite(),因为该方法会筛除掉NaN和Infinity两个关键字。
functionisNumber(obj){
returntypeofobj==='number'&&isFinite(obj)
}
方法三:
不使用typeof,可以用Object.prototype.toString来实现,只是代码量稍微比较大而已。
functionisNumber(obj){
returnObject.prototype.toString.call(obj)==='[objectNumber]'&&!isNaN(obj)
}
或者
functionisNumber(obj){
returnObject.prototype.toString.call(obj)==='[objectNumber]'&&isFinite(obj)
}
方法四:
据说这个方法是世界上最短的数字判断代码
functionisNumber(obj){
returnobj===+obj
}
js判断变量isNumber方法的延伸
1、判断字符串:
functionisString(obj){
returnobj===obj+''
}
2、判断布尔类型
functionisBoolean(obj){
returnobj===!!obj
}
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。