Actionscript 3 是否有一个函数来测试字符串变量是否为数值?

Actionscript 3 是否有一个函数来测试字符串变量是否为数值?,actionscript-3,types,Actionscript 3,Types,有没有办法测试一个字符串,比如下面的一个,看看它是否是一个实际的数值 var theStr:String = '05'; 我想区分上面的字符串值和这样的字符串值: var theStr2:String = 'asdfl'; 谢谢 Yes使用isNaN函数测试字符串是否为有效的数字: var n:Number=Number(theStr); if (isNaN(n)){ trace("not a number"); } else { trace("number="+n); } 如果您只是

有没有办法测试一个字符串,比如下面的一个,看看它是否是一个实际的数值

var theStr:String = '05';
我想区分上面的字符串值和这样的字符串值:

var theStr2:String = 'asdfl';

谢谢

Yes使用
isNaN
函数测试
字符串
是否为有效的
数字

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

如果您只是对检查整数感兴趣,那么可以使用下面的match函数,数字的正则表达式更复杂,您最好遵循Patrick提供的强制转换方法

if (s.match(/^\d+$/)){//do something}
当然,如果你无论如何都需要施放它,那么使用isNaN是非常有意义的。我想我会提供一个替代方案,以防你不投


如果s只包含数字(没有空格、小数、字母等),并且要求至少有一个数字,则此代码将返回true。

必须强制转换到
数字才能获得is
NaN
。如果使用
int
可以将字母转换为
0

很奇怪,到目前为止还没有人发现这一点,但是val应该是var。我不会只更改一个字符=/Good spot;)我猜是做了太多的Scala了