Maison >tutoriels informatiques >connaissances en informatique >Comment déterminer si une donnée est un tableau

Comment déterminer si une donnée est un tableau

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBavant
2024-01-08 08:06:171223parcourir

Comment déterminer si une donnée est un tableau

Il y en a deux principaux, typeof et instanceof, juti est utilisé comme suit

type d'opérateur

Pour plusieurs types d'objets tels que Fonction, Chaîne, Nombre, Undéfini, etc., il est tout à fait capable, mais lorsqu'il s'agit d'un Tableau

1 var arr=new Array("1","2","3","4","5");

2 alerte(typeof(arr));

Vous recevrez une réponse objet, ce qui est un peu décevant.

instance d'opérateur

L'opérateur instanceof en JavaScript renvoie une valeur booléenne indiquant si l'objet est une instance d'une classe spécifique. Méthode d'utilisation : résultat = instance d'objet de classe, toujours le tableau à l'instant, réessayez, euh, retourne vrai avec succès.

1 var arrayStr=new Array("1","2","3","4","5");

2 alerte (arrayStr instanceof Array);

Petit résumé : il semble que les questions dont nous avons discuté aujourd'hui aient trouvé une réponse, mais en fait, la navette entre plusieurs images posera de gros problèmes.

Quatre façons de déterminer si une variable est un tableau ou un objet en js

Parce qu'il s'agit d'un tableau ou d'un objet, la valeur de retour de l'opération typeof est objet, il est donc nécessaire de faire la distinction entre les types de tableau et les types d'objet :

Fang 1 : via l'attribut de longueur : généralement, l'objet n'a pas de valeur d'attribut de longueur, sa valeur est indéterminée et la valeur de longueur du tableau est de type numéro

Inconvénients : Très peu pratique. Lorsque l'attribut de l'objet a une longueur et que sa valeur est un nombre (comme un tableau de classes), cette méthode n'est pas recommandée.

*Partie 2 : Jugez la différence grâce à une instance de

var arr = [1, 2, 3]; var obj = {nom : 'lyl',age : 18, 1 : 'nom'}console.log(arr instanceof Array); ); //faux

*Fang San : via le constructeur

var arr = [1, 2, 3]; var obj = {nom : 'lyl',age : 18, 1 : 'nom'}console.log(arr.constructor === Array); (obj.constructor === Tableau); //false

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer