2010-06-16 89 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

相關問題