


Méthode JavaScript pour déterminer si une variable est un objet ou un tableau_javascript skills
May 16, 2016 pm 04:38 PMtypeof renvoie un objet
Tous les types de données en JavaScript sont des objets au sens strict, mais dans la réalité, nous avons toujours des types. Si vous souhaitez déterminer si une variable est un tableau ou un objet, vous ne pouvez pas utiliser typeof car tout renvoie un objet.
var o = { 'nom':'lee' };
var a = ['reg','bleu'];
document.write( 'o typeof est ' typeof o);
document.write( ' <br />');
document.write( ' un type de est ' type de a);
Exécution :
o typeof est un objet
un type de est un objet
Par conséquent, nous ne pouvons qu'abandonner cette méthode. Il existe deux façons de déterminer s'il s'agit d'un tableau ou d'un objet
Tout d'abord, utilisez l'attribut typeof plus length
Le tableau a un attribut de longueur, pas l'objet, et le type de tableau et d'objet renvoient tous deux un objet, nous pouvons donc juger de cette façon
var o = { 'nom':'lee' };
var a = ['reg','bleu'];
var getDataType = fonction(o){
Si(typeof o == 'objet'){
Si( typeof o.length == 'number' ){
return 'Array'
}autre{
renvoie 'Objet' ; >
}autre{
return 'le paramètre n'est pas un type d'objet' ;
>
};
alert( getDataType(o) ); // Objet
alert( getDataType(a) ); // Tableau
alert( getDataType(1) ); // le paramètre n'est pas un type d'objet
alert( getDataType(true) ); // le paramètre n'est pas un type d'objet
alert( getDataType('a') ); // le paramètre n'est pas un type d'objet
Deuxièmement, utilisez instanceof
Utilisez instanceof pour déterminer si une variable est un tableau, tel que :
var a = ['reg','bleu'];
alert( une instance de Array ); // true
alert( ou instanceof Array ); // false
var a = ['reg','bleu'];
alert( une instance d'Object ); // true
alert( ou instanceof Object ); // true
.
var a = ['reg','bleu'];
var getDataType = fonction(o){
Si (o instance de Array) {
renvoie 'Tableau'
}else if( o instanceof Object ){
return 'Objet' ;
}autre{
return 'le paramètre n'est pas un type d'objet' ;
>
};
alert( getDataType(o) ); // Objet
alert( getDataType(a) ); // Tableau
alert( getDataType(1) ); // le paramètre n'est pas un type d'objet
alert( getDataType(true) ); // le paramètre n'est pas un type d'objet
alert( getDataType('a') ); // le paramètre n'est pas un type d'objet
Si vous ne jugez pas Array en premier, par exemple :
var o = { 'nom':'lee' };
var a = ['reg','bleu'];
var getDataType = fonction(o){
Si (o instance d'objet) {
renvoyer 'Objet'
}else if( ou instanceof Array ){
return 'Array' ;
}autre{
return 'le paramètre n'est pas un type d'objet' ;
>
};
alert( getDataType(o) ); // Objet
alert( getDataType(a) ); // Objet
alert( getDataType(1) ); // le paramètre n'est pas un type d'objet
alert( getDataType(true) ); // le paramètre n'est pas un type d'objet
alert( getDataType('a') ); // le paramètre n'est pas un type d'objet
Ensuite, le tableau sera également jugé comme objet.

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

Comment supprimer les éléments en double du tableau PHP à l'aide de la boucle foreach ?

Comment convertir le tableau de résultats d'une requête MySQL en objet ?

Inversion des valeurs clés du tableau PHP : analyse comparative des performances de différentes méthodes

Pratique du tri multidimensionnel des tableaux PHP : des scénarios simples aux scénarios complexes

L'art de PHP Array Deep Copy : utiliser différentes méthodes pour obtenir une copie parfaite

Application de la fonction de regroupement de tableaux PHP dans le tri des données

Quelle est la différence entre les tableaux et les objets en PHP ?

Meilleures pratiques pour la copie approfondie des tableaux PHP : découvrez des méthodes efficaces
