Maison > interface Web > js tutoriel > le corps du texte

JavaScript détermine le type de données variable

高洛峰
Libérer: 2017-01-14 10:12:23
original
1320 Les gens l'ont consulté

J'ai récemment travaillé sur un projet qui impliquait le traitement du jugement js des types de données. J'ai recherché des informations pertinentes sur Internet et j'ai personnellement testé le jugement de différents types de données. Ci-dessous, l'éditeur partagera avec vous un résumé du contenu spécifique pour votre référence !

1. Types de données en JS

  1. Type numérique (Nombre) : y compris les entiers et les nombres à virgule flottante.

2. Booléen

3. Chaîne

4. Objet

5. Tableau

6. Null

7. Non défini

2. Déterminer le type de données d'une variable

1. . Type numérique (nombre)

La méthode de jugement la plus couramment utilisée est :

function isNumber(val){
return typeof val === 'number';
}
Copier après la connexion


Mais cela ne fonctionne pas dans certains cas. , tel que :

var a;
alert(isNumber(parseInt(a)));
Copier après la connexion

Ce qui apparaît ici est vrai, comme le montre la figure ci-dessous :

JavaScript détermine le type de données variable

Mais en fait la variable a est NaN , qui ne peut pas être utilisé pour les opérations numériques.

Ainsi, la fonction ci-dessus peut être modifiée comme :

function isNumber(val){
return typeof val === 'number' && isFinite(val);
}
Copier après la connexion

Après modification, false apparaîtra, comme le montre la figure ci-dessous :

JavaScript détermine le type de données variable

Au fait, permettez-moi de vous présenter la fonction JavaScript isFinite(). La fonction isFinite() est utilisée pour vérifier si son paramètre est l'infini si le nombre est un nombre fini (ou peut être converti en un nombre fini. nombre), alors il renvoie vrai. Sinon, si number est NaN (pas un nombre) ou un nombre infini positif ou négatif, false est renvoyé.

2. Booléen

Le jugement de type booléen est relativement simple et peut être jugé par la méthode suivante :

/*
判断变量val是不是布尔类型
*/
function isBooleanType(val) {
return typeof val ==="boolean";
}
Copier après la connexion

Code de test :

Copier après la connexion

Résultat de l'exécution :

JavaScript détermine le type de données variable

3. String (String)

Détermination du type de chaîne C'est relativement simple . Vous pouvez utiliser la méthode suivante pour juger :

/*
判断变量是不是字符串类型
*/
function isStringType(val) {
return typeof val === "string";
}
Copier après la connexion


4.Indéfini (Indéfini)

Copier après la connexion

Le jugement d'indéfini est relativement simple. et peut être jugé par la méthode suivante :

JavaScript détermine le type de données variableCode de test :


Résultat d'exécution :

/*
判断变量是不是Undefined
*/
function isUndefined(val) {
return typeof val === "undefined";
}
Copier après la connexion

5. Object (Object)

Copier après la connexion

Puisque la variable est une valeur nulle Lorsque Null est utilisé, typeof renverra également un objet, donc Object ne peut pas être jugé directement à l'aide de typeof.

JavaScript détermine le type de données variable devrait ressembler à ceci :


Code du test :


Résultat de l'exécution :
function isObj(str){
if(str === null || typeof str === 'undefined'){
return false;
}
return typeof str === 'object';
}
Copier après la connexion

Copier après la connexion

6. Null

Pour juger la valeur nulle, utilisez val === null

JavaScript détermine le type de données variable


Code de test :

function isNull(val){
return val === null;
}
Copier après la connexion


Résultat d'exécution :

/*
判断变量是不是null
*/
function isNull(val){
return val === null;
}
/*测试变量*/
var a;
var b = null;
var c = "str";
//弹出运行结果
alert("变量a是null的判断结果是:"+isNull(a));//false
alert("变量b是null类型的判断结果是:"+isNull(b));//true
alert("变量c是null类型的判断结果是:"+isNull(c));//false
Copier après la connexion

Array

Le type de tableau ne peut pas être déterminé par typeof. Parce que lorsque la variable est de type tableau, typeof renverra un objet.

JavaScript détermine le type de données variable Il existe deux façons de déterminer le type de tableau :



Code de test :

/*判断变量arr是不是数组
方法一
*/
function isArray(arr) {
return Object.prototype.toString.apply(arr) === '[object Array]';
}
/*判断变量arr是不是数组
方法二
*/
function isArray(arr) {
if(arr === null || typeof arr === 'undefined'){
return false;
}
return arr.constructor === Array;
}
Copier après la connexion


Résultat d'exécution :

Copier après la connexion

Le contenu ci-dessus est le résumé des points de connaissances JavaScript introduits par l'éditeur (6) JavaScript Jugement J'espère que ces connaissances sur les types de données variables vous seront utiles. Si vous voulez en savoir plus, faites attention au site Web PHP chinois !

Pour plus d'articles sur l'évaluation des types de données variables par JavaScript, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!