2010-06-16 9 views

Répondre

13

Oui utiliser la fonction isNaN pour tester si elle le String est valide Number:

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

Surpris personne n'a encore repéré cela, mais val devrait être var. Ne me laisserais pas seulement changer le caractère =/ – Rjs37

+0

Bon endroit;) faire trop de Scala je suppose – Patrick

0

Si vous souhaitez juste vérifier entiers, vous pouvez utiliser la fonction de correspondance comme suit, l'expression rationnelle pour les nombres est plus compliqué et vous seriez probablement mieux en suivant la méthode de coulée que Patrick a fourni.

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

Bien sûr, si vous avez besoin de le lancer quand même, utiliser isNaN est parfaitement logique. Je pensais juste offrir une alternative au cas où vous n'alliez pas le lancer.

Ce code renverra vrai si s ne contient que des chiffres (pas d'espaces, décimales, lettres etc ...) et exige qu'il y ait au moins 1 chiffre.

2

Vous devez convertir en Number pour obtenir NaN. Si vous utilisez int des lettres peuvent être castés à 0.

Questions connexes