在Javascript中检查字符串和整数的字符串变量[重复]
Posted
技术标签:
【中文标题】在Javascript中检查字符串和整数的字符串变量[重复]【英文标题】:check a string variable for string and Integer in Javascript [duplicate] 【发布时间】:2015-10-20 14:31:33 【问题描述】:如下例
var m="hello" or var m="50"
检查字符串是数值还是字母
我正在使用它,但它不起作用
var check=parseInt(m);
if(Number(check)==NaN)
alert("this is Not a Number ");
else
alert("This is Number ");
【问题讨论】:
***.com/questions/1779013/… 或 ***.com/questions/175739/… 或 ***.com/questions/1303646/…NaN == NaN
结果为false
。使用isNaN
函数。
parseInt 本身返回一个整数或 NaN
parseInt
是不必要的;你只需要if (isNaN(check)) ...
@DanielBeck:这实际上取决于您想要的严格程度。例如,0x16
对您来说是一个有效的数字字符串吗?如果您只想查找有效的 decimal 值,那么它不是。要抓住这一点,你必须parseInt(m,10)
。虽然实际上,即使这样也行不通,因为它会解析到第一个非数字字符并返回0
。
【参考方案1】:
if(isNaN(m))
//is not a number
else
//is a number
应该可以。 NaN == NaN 实际上返回 false。
编辑:正如上面的 cmets 所说,parseInt 实际上并不是必需的。
【讨论】:
正如上面的 cmets 所说,parseInt 实际上并不是必需的。:有时是。这完全取决于您想将什么视为有效数字。空字符串是数字吗?因为isNaN("")
为假,但parseInt("",10)
返回NaN
。
我尝试了几种方法,但对我没有用,谢谢它解决了我的问题以上是关于在Javascript中检查字符串和整数的字符串变量[重复]的主要内容,如果未能解决你的问题,请参考以下文章
javascript 输入密钥检查使用lodashjs是字符串或整数。