Vérifiez si Sring est un nombre en JavaScript
-
Utilisez la fonction
isNaN()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript. -
Utilisez l’opérateur
+
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript. -
Utilisez la fonction
parseInt()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript. -
Utilisez la fonction
Number()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript. - Utilisez les expressions régulières pour vérifier si une chaîne donnée est un nombre ou non en JavaScript
Le nombre dans le langage de programmation est le type de données qui représente les entiers, les flottants, etc. Les chaînes de caractères représentent tous les caractères plutôt que seulement des valeurs numériques. Les chaînes de caractères peuvent contenir des valeurs numériques.
Nous vérifierons si une chaîne donnée est un nombre ou non dans cet article.
Utilisez la fonction isNaN()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript.
La fonction isNaN()
signifie n'est pas un nombre
. C’est une fonction intégrée de JavaScript utilisée pour déterminer si une valeur donnée n’est pas une valeur numérique, ce qui inclut à la fois les nombres réels et les chaînes numériques.
La fonction isNaN()
renvoie true
si la valeur n’est pas un nombre et false
si c’est un nombre ou si elle peut être convertie en un nombre valide.
Voici la syntaxe de base de la fonction isNaN()
:
isNaN(value)
valeur
: La valeur que vous voulez vérifier si c’est un nombre. Cela peut être une variable, une constante ou une expression.
Exemple :
console.log(isNaN('195'))
console.log(isNaN('boo'))
console.log(isNaN('100px'))
Sortie :
false
true
true
Si nous voulons créer une fonction qui renvoie true
pour une valeur valide, nous pouvons toujours le faire en créant une fonction qui nie la sortie de la fonction isNaN()
.
function isNum(val) {
return !isNaN(val)
}
console.log(isNum('aaa'));
console.log(isNum('13579'));
console.log(isNum('-13'));
Sortie :
false
true
true
Maintenant, cette fonction appelée isNum()
renverra true
pour une valeur numérique valide.
Gestion des chaînes numériques avec des décimales
La fonction isNaN()
est polyvalente et peut également gérer les chaînes numériques avec des points décimaux. Par exemple :
const str = '3.14'; // La chaîne que nous voulons vérifier
const isNumeric = isNaN(str);
if (isNumeric) {
console.log(`${str} n'est pas un nombre.`);
} else {
console.log(`${str} est un nombre.`);
}
La sortie identifiera correctement '3.14'
comme un nombre :
3.14 is a number.
Utilisez l’opérateur +
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript.
L’opérateur +
en JavaScript sert à la fois à l’addition arithmétique et en tant qu’opérateur unaire de coercition de type.
Lorsqu’il est appliqué à des chaînes, l’opérateur +
tente de les convertir en valeurs numériques. Si la chaîne peut être convertie avec succès en un nombre, le résultat sera une valeur numérique valide ; sinon, cela donnera NaN
(N'est pas un nombre
).
Par exemple,
console.log(+'195')
console.log(+'boo')
Sortie :
195
NaN
Utilisez la fonction parseInt()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript.
La méthode parseInt()
en JavaScript est utilisée pour analyser une chaîne et la convertir en un entier (un nombre entier). Elle lit la chaîne de gauche à droite jusqu’à ce qu’elle rencontre un caractère qui ne fait pas partie d’un entier valide, puis elle arrête l’analyse.
Voici la syntaxe de base pour utiliser parseInt()
:
parseInt(string[, radix]);
chaine
: La chaîne à analyser et à convertir en un entier.base
(facultatif) : Un entier entre 2 et 36 qui représente la base du système de numération utilisé dans la chaîne. Ce paramètre est facultatif et si omis, JavaScript suppose la base 10 (décimale).
Elle renvoie NaN
lorsqu’elle est incapable d’extraire des nombres de la chaîne.
Par exemple,
console.log(parseInt('195'))
console.log(parseInt('boo'))
Sortie :
195
NaN
Gestion des chaînes numériques avec une base
La méthode parseInt()
vous permet également de spécifier la base (radix) du système de numération utilisé dans la chaîne. Par exemple, vous pouvez analyser des nombres binaires (base 2), octaux (base 8) ou hexadécimaux (base 16).
Voici un exemple d’analyse d’une chaîne hexadécimale :
const chaineHex = '1A'; // Chaîne hexadécimale
const valeurInt = parseInt(chaineHex, 16); // Spécifie la base 16
if (isNaN(valeurInt)) {
console.log(`${chaineHex} n'est pas un nombre.`);
} else {
console.log(`${chaineHex} est un nombre.`);
}
Dans ce cas, la sortie identifiera correctement '1A'
comme un nombre hexadécimal :
1A is a number.
Utilisez la fonction Number()
pour vérifier si une chaîne donnée est un nombre ou non en JavaScript.
La fonction Number()
convertit l’argument en un nombre représentant la valeur de l’objet. Si elle échoue à convertir la valeur en un nombre, elle renvoie NaN
.
Nous pouvons également l’utiliser avec des chaînes pour vérifier si une chaîne donnée est un nombre ou non.
Par exemple,
console.log(Number('195'))
console.log(Number('boo'))
Sortie :
195
NaN
Utilisez les expressions régulières pour vérifier si une chaîne donnée est un nombre ou non en JavaScript
Une expression régulière, souvent appelée regex, est un motif qui spécifie un ensemble de chaînes. Elle peut être utilisée pour faire correspondre des motifs dans des chaînes, en en faisant un outil polyvalent pour des tâches telles que la validation des chaînes.
En JavaScript, vous pouvez créer des expressions régulières en utilisant soit le constructeur RegExp
, soit en utilisant la notation littérale de regex entre des barres obliques, comme /motif/
.
Nous pouvons utiliser de tels motifs pour vérifier si une chaîne contient un chiffre ou non.
Tout d’abord, nous devons définir un motif d’expression régulière qui correspond aux valeurs numériques. Nous pouvons créer un motif simple qui correspond aux entiers positifs et négatifs, ainsi qu’aux nombres décimaux :
const numberPattern = /^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/;
Voici ce que ce motif fait :
^
: Indique le début de la chaîne.[-+]?
: Correspond à un signe positif ou négatif facultatif.[0-9]*
: Correspond à zéro ou plusieurs chiffres avant le point décimal.\.?
: Correspond à un point décimal facultatif.[0-9]+
: Correspond à un ou plusieurs chiffres après le point décimal.([eE][-+]?[0-9]+)?
: Correspond à une partie exponentielle facultative, commee-3
ouE+4
.
Maintenant, appliquez la méthode test()
du motif d’expression régulière à la chaîne. La méthode test()
renvoie true
si la chaîne correspond au motif et false
sinon :
const isNumber = numberPattern.test(str);
Par exemple,
function isNumeric(val) {
return /^-?\d+$/.test(val);
}
console.log(isNumeric('aaa'));
console.log(isNumeric('13579'));
console.log(isNumeric('-13'));
Sortie :
false
true
true
Article connexe - JavaScript String
- Obtenir le dernier caractère d'une chaîne en JavaScript
- Transformer une chaîne en une date en JavaScript
- Obtenir le premier caractère d'une chaîne en JavaScript
- Convertir un tableau en chaîne en JavaScript
- Vérifier l'égalité des chaînes en JavaScript
- Convertir un tableau en chaîne sans virgule en JavaScript