Comment déterminer si une variable contient un tableau?
sobes.tech IA
Réponse de l'IA
La méthode la plus fiable consiste à utiliser Array.isArray():
// Vérifie si la valeur est un tableau
Array.isArray(maVariable);
Cette méthode retourne true si la variable est un tableau, et false sinon, indépendamment du contexte d'exécution ou d'autres facteurs.
D'autres méthodes moins fiables incluent :
-
typeof:// Pour les tableaux, typeof renverra 'object' typeof maVariable === 'object';Peu fiable, car
typeofretourne'object'pour de nombreux types de données, pas seulement pour les tableaux (objets, null). -
instanceof:// Vérifie si l'objet est une instance de la classe Array maVariable instanceof Array;Peut être peu fiable lors de l'utilisation avec des iframes ou des fenêtres avec différents contextes d'exécution JavaScript, où
Arrayd'un contexte diffère de celui d'un autre. -
Vérification du constructeur :
// Vérifie si le constructeur de la variable est Array maVariable.constructor === Array;Peut également poser problème dans différents contextes d'exécution.
Tableau récapitulatif :
| Méthode | Fiabilité | Description |
|---|---|---|
Array.isArray() |
Élevée | Spécifique pour vérifier les tableaux. |
typeof maVariable |
Faible | Pour les tableaux, retourne 'object'. |
maVariable instanceof Array |
Moyenne/Basse (selon le contexte) | Vérifie si l'objet appartient à la classe Array. |
maVariable.constructor === Array |
Moyenne/Basse (selon le contexte) | Vérifie la propriété constructor. |
Ainsi, Array.isArray() est la méthode privilégiée et la plus fiable.