Maison > interface Web > js tutoriel > Comment puis-je déterminer efficacement si une valeur existe dans un tableau JavaScript ?

Comment puis-je déterminer efficacement si une valeur existe dans un tableau JavaScript ?

Patricia Arquette
Libérer: 2024-12-07 22:52:13
original
759 Les gens l'ont consulté

How Can I Efficiently Determine if a Value Exists in a JavaScript Array?

Exploration approfondie de la détermination de la valeur d'un tableau

En JavaScript, déterminer si un élément existe dans un tableau peut être une tâche de programmation courante. Pour résoudre ce problème, nous introduisons une technique d'itération de tableau.

La fonction fournie :

Array.prototype.contains = function(obj) {
    var i = this.length;
    while (i--) {
        if (this[i] == obj) {
            return true;
        }
    }
    return false;
}
Copier après la connexion

Malheureusement, cette fonction renvoie systématiquement false. Un problème potentiel réside dans l'opérateur d'égalité (==) utilisé dans l'instruction if, qui vérifie la coercition de type plutôt que l'égalité stricte. Réviser cette ligne en if (this[i] === obj) résoudrait le problème.

Cependant, une solution plus efficace et plus concise est disponible en utilisant la fonction utilitaire de jQuery :

$.inArray(value, array)
Copier après la connexion

Cette fonction recherche la position d'une valeur spécifique dans un tableau, renvoyant l'index si elle est trouvée ou -1 sinon.

Dans le fichier fourni exemple :

arrValues = ["Sam","Great", "Sample", "High"]
alert(arrValues.contains("Sam"));
Copier après la connexion

Le résultat attendu serait vrai en utilisant notre fonction personnalisée (après avoir corrigé le contrôle d'égalité) ou 0 en utilisant $.inArray de jQuery.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal