Maison interface Web js tutoriel 3 façons de déterminer si une variable est un nombre en JavaScript (avec code)

3 façons de déterminer si une variable est un nombre en JavaScript (avec code)

Oct 30, 2020 pm 05:29 PM
javascript 变量 数据类型

3 façons de déterminer si une variable est un nombre en JavaScript (avec code)

Tutoriel recommandé : "Tutoriel vidéo JavaScript"

JavaScript est un langage typé dynamiquement, ce qui signifie que l'interpréteur est exécuté au moment de l'exécutionDéterminez le type de la variable. En fait, cela nous permet également d'utiliser la même variable pour stocker différents types de données dans le même code. Sans documentation et cohérence, nous ne connaissons pas toujours le type d'une variable lorsque nous travaillons avec du code.

Lorsque nous nous attendons à ce qu'une variable soit un nombre, opérer sur des chaînes ou des tableaux peut conduire à des résultats étranges dans le code. Dans cet article, nous présenterons quelques fonctions qui déterminent si une variable est un nombre.

Les chaînes de chiffres comme "10" ne doivent pas être acceptées. En JavaScript, les valeurs spéciales telles que NaN, Infinity et -Infinity sont également de type numérique.

Sur la base de ces exigences, la meilleure fonction à utiliser est la fonction Number de l'objet isFinite() intégré. Cependant, les développeurs utilisent souvent d'autres fonctions telles que les fonctions Number.isNaN() et typeof().

Nous créons d'abord quelques variables :

let intVar = 2;
let floatVar = 10.5;
let stringVar = '4';
let nanVar = NaN;
let infinityVar = Infinity;
let nullVar = null;
let undefinedVar = undefined;
Copier après la connexion

Utilisez le nom de la fonction Number.isFinite()

Number.isFinite() vérification de la fonction Si la variable est un nombre, vérifie également s'il s'agit d'une valeur finie. Donc pour un nombre de NaN, Infinity ou -Infinity, ça renvoie false.

Vérifions-le en utilisant les variables définies ci-dessus :

> Number.isFinite(intVar);
true
> Number.isFinite(floatVar);
true
> Number.isFinite(stringVar);
false
> Number.isFinite(nanVar);
false
> Number.isFinite(infinityVar);
false
> Number.isFinite(nullVar);
false
> Number.isFinite(undefined);
false
Copier après la connexion

C'est exactement ce que nous voulons. Les nombres spéciaux non finis et toute variable de type non numérique sont ignorés. Donc, si vous souhaitez vérifier si une variable est un nombre, le meilleur moyen est d'utiliser la fonction Number.isFinite().

Utilisez la méthode Number.isNaN()

L'objet standard Number a une méthode isNaN(). Il accepte un paramètre et détermine si sa valeur est NaN. Puisque nous voulons vérifier si une variable est un nombre, nous utiliserons l'opérateur not ! dans la vérification.

> !Number.isNaN(intVar);
true
> !Number.isNaN(floatVar);
true
> !Number.isNaN(stringVar);
true # Wrong
> !Number.isNaN(nanVar);
false
> !Number.isNaN(infinityVar);
true # Wrong
> !Number.isNaN(nullVar);
true # Wrong
> !Number.isNaN(undefinedVar);
true # Wrong
Copier après la connexion

Cette méthode est assez indulgente car elle accepte des valeurs qui ne sont pas du tout des nombres. Cette approche fonctionne mieux lorsque vous savez que vous avez un nombre et que vous souhaitez vérifier s'il s'agit d'une valeur NaN, plutôt qu'une vérification générale des nombres.

Utilisez la méthode typeof()

typeof()Une fonction est une fonction globale qui accepte une variable ou une valeur comme paramètre et renvoie sa représentation sous forme de chaîne de type. JavaScript a un total de 9 types

  • non défini
  • booléen
  • numéro
  • chaîne
  • bigint
  • symbole
  • objet
  • null (typeof() affiche object)
  • fonction (un type spécial d'objet)

Pour vérifier si la variable est un nombre, il suffit de vérifier si typeof() la valeur renvoyée est `"nombre". Essayons-le avec une variable de test :

> typeof(intVar) == 'number';
true
> typeof(floatVar) == 'number';
true
> typeof(stringVar) == 'number';
false
> typeof(nanVar) == 'number';
true # Wrong
> typeof(infinityVar) == 'number';
true # Wrong
> typeof(nullVar) == 'number';
false
> typeof(undefined) == 'number';
false
Copier après la connexion

La fonction typeof() fonctionne bien mieux que Number.isNaN(). Il détermine correctement que les variables chaîne null et undefined ne sont pas des nombres. Cependant, pour NaN et Infinity, cela revient true.

Bien que ce soit techniquement le résultat correct, NaN et Infinity sont des valeurs numériques spéciales et pour la plupart des cas d'utilisation, nous préférons les ignorer.

Résumé

Dans cet article, nous avons appris comment vérifier si une variable est un nombre en JavaScript. Applicable uniquement lorsque Number.isNaN()函数仅在我们知道变量为数字并且需要验证它是否为NaN`.

S'il y a NaN, Infinity ou -Infinity et d'autres nombres dans le code, la fonction typeof()` s'applique. La méthode

Number.isFinite() capture tous les nombres finis et est la plus adaptée à nos besoins.

Adresse originale : https://stackabuse.com/javascript-check-if-variable-is-a-number/

Auteur : Marcus Sanatan

Pour plus de connaissances sur la programmation, veuillez visiter : Introduction à la programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel type de données doit être utilisé pour le champ sexe dans la base de données MySQL ? Quel type de données doit être utilisé pour le champ sexe dans la base de données MySQL ? Mar 14, 2024 pm 01:21 PM

Quel type de données doit être utilisé pour le champ sexe dans la base de données MySQL ?

Quel est le meilleur type de données pour les champs de genre dans MySQL ? Quel est le meilleur type de données pour les champs de genre dans MySQL ? Mar 15, 2024 am 10:24 AM

Quel est le meilleur type de données pour les champs de genre dans MySQL ?

Que sont les variables d'instance en Java Que sont les variables d'instance en Java Feb 19, 2024 pm 07:55 PM

Que sont les variables d'instance en Java

Comment obtenir des variables de la méthode PHP en utilisant Ajax ? Comment obtenir des variables de la méthode PHP en utilisant Ajax ? Mar 09, 2024 pm 05:36 PM

Comment obtenir des variables de la méthode PHP en utilisant Ajax ?

Carte mentale de la syntaxe Python : compréhension approfondie de la structure du code Carte mentale de la syntaxe Python : compréhension approfondie de la structure du code Feb 21, 2024 am 09:00 AM

Carte mentale de la syntaxe Python : compréhension approfondie de la structure du code

Pratique d'utilisation de jQuery : plusieurs façons de déterminer si une variable est vide Pratique d'utilisation de jQuery : plusieurs façons de déterminer si une variable est vide Feb 27, 2024 pm 04:12 PM

Pratique d'utilisation de jQuery : plusieurs façons de déterminer si une variable est vide

Python d'entrée à la maîtrise : de zéro base au développement de projet Python d'entrée à la maîtrise : de zéro base au développement de projet Feb 20, 2024 am 11:42 AM

Python d'entrée à la maîtrise : de zéro base au développement de projet

Compréhension approfondie de const en langage C Compréhension approfondie de const en langage C Feb 18, 2024 pm 12:56 PM

Compréhension approfondie de const en langage C

See all articles