2010-06-16 87 views

回答

13

是使用isNaN功能测试,如果它的String是一个有效的Number

var n:Number=Number(theStr); 
if (isNaN(n)){ 
trace("not a number"); 
} else { 
trace("number="+n); 
} 
+0

惊讶的没有人发现了这个,但val应该是var。不会让我只改变一个字符=/ – Rjs37 2013-12-10 10:02:25

+0

不错的地方;)我猜太多了Scala – Patrick 2013-12-10 12:10:12

0

如果你只是感兴趣,检查整数,你可以使用匹配函数如下,用于数字的正则表达式是更复杂按照Patrick提供的投射方法,你可能会更好。

if (s.match(/^\d+$/)){//do something} 

当然,如果您需要投射它,那么使用isNaN是非常有意义的。只是以为我会提供一个替代方案,以防你不打算放弃它。

如果s仅包含数字(不包含空格,小数点,字母等),并且要求至少有1位数字,则此代码将返回true。

2

您必须投下Number以得到NaN。如果您使用int,则可以将字母转换为0

相关问题