【问题标题】:check a string variable for string and Integer in Javascript [duplicate]在Javascript中检查字符串和整数的字符串变量[重复]
【发布时间】: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 ");

}

【问题讨论】:

  • NaN == NaN 结果为false。使用isNaN 函数。
  • parseInt 本身返回一个整数或 NaN
  • parseInt 是不必要的;你只需要if (isNaN(check)) {...}
  • @DanielBeck:这实际上取决于您想要的严格程度。例如,0x16 对您来说是一个有效的数字字符串吗?如果您只想查找有效的 decimal 值,那么它不是。要抓住这一点,你必须parseInt(m,10)。虽然实际上,即使这样也行不通,因为它会解析到第一个非数字字符并返回0

标签: javascript


【解决方案1】:
if(isNaN(m)) {
   //is not a number
} else {
   //is a number
}

应该可以。 NaN == NaN 实际上返回 false。

编辑:正如上面的 cmets 所说,parseInt 实际上并不是必需的。

【讨论】:

  • 正如上面的 cmets 所说,parseInt 实际上并不是必需的。:有时是。这完全取决于您想将什么视为有效数字。空字符串是数字吗?因为isNaN("") 为假,但parseInt("",10) 返回NaN
  • 我尝试了几种方法,但对我没有用,谢谢它解决了我的问题
猜你喜欢
  • 2020-08-07
  • 2016-02-12
  • 2018-11-28
  • 2018-08-19
  • 2013-04-03
  • 2020-07-24
相关资源
最近更新 更多