Vérifiez si la valeur est un nombre
Comment puis-je vérifier simplement si une valeur de retour de type int
ou uint
est un nombre?
source d'informationauteur mate64
Vous devez vous connecter pour publier un commentaire.
Comment puis-je vérifier simplement si une valeur de retour de type int
ou uint
est un nombre?
source d'informationauteur mate64
Vous devez vous connecter pour publier un commentaire.
Simple:
[Mise à JOUR]
Gardez à l'esprit que si
_myValue
est de typeint
ouuint
puis(_myValue is Number)
sera également synonyme detrue
. Si vous voulez savoir si_myValue
est un nombre qui n'est pas un entier(int) ou un entier non signé (uint), en d'autres termes un float, alors vous pouvez simplement modifier le conditionnel comme suit:Prenons un exemple:
Si vous voulez savoir si mavaleur est l'un des types numériques (Nombre, int, uint), vous pouvez vérifier si
(_myValue is Number)
comme Taurayi suggéré.Si vous aussi veux savoir si _myValue est un chaîne numérique (comme "6320" ou "5.987"), utilisez ceci:
Il utilise
Number(_myValue)
de jeter_myValue
à laNumber
classe. SiNumber
est pas en mesure de le convertir en un utile il sera de retourNaN
nous utilisons donc des!isNaN()
assurez-vous que la valeur retournée n'est pas "pas un nombre".Elle retourne true, pour toute variable de type
Number
(tant que sa valeur n'est pasNaN
),int
uint
et les chaînes de caractères qui contiennent une représentation valide d'un nombre.Ces méthodes pourrait être problématique si vous souhaitez vérifier l'entrée d'un champ de texte, qui est "toujours" une chaîne de caractères. Si vous avez une chaîne "123" et de vérifier avec "123" est Numéro, vous obtiendrez un faux. Si le Numéro("123") donnerait vrai, mais là encore, il en sera de Nombre("lalala") (événement si le résultat est NaN qui va vous dire NaN est le Numéro (true).
De travailler avec de la ficelle que vous pouvez faire:
Il y a