Maison >interface Web >js tutoriel >Pourquoi mon tableau contient-il une fonction qui renvoie toujours False et comment puis-je vérifier de manière fiable les valeurs dans les tableaux JavaScript ?

Pourquoi mon tableau contient-il une fonction qui renvoie toujours False et comment puis-je vérifier de manière fiable les valeurs dans les tableaux JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-15 03:14:09830parcourir

Why Does My Array Contains Function Always Return False, and How Can I Reliably Check for Values in JavaScript Arrays?

Comment vérifier la valeur dans un tableau

Déterminer si une valeur spécifique existe dans un tableau est une tâche de programmation courante. Cependant, lorsque vous utilisez la fonction personnalisée suivante :

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

vous pouvez rencontrer un comportement inattendu (renvoyant toujours false). En effet, la fonction repose sur des comparaisons d'égalité stricte (==), qui peuvent échouer dans certains cas (par exemple, des nombres considérés comme égaux mais non identiques).

Une solution robuste utilisant jQuery

Pour des vérifications de valeurs fiables dans les tableaux, pensez à utiliser la fonction utilitaire de jQuery :

$.inArray(value, array)

Cette fonction recherche dans le tableau le valeur spécifiée. Si la valeur est trouvée, elle renvoie son index dans le tableau. Si la valeur n'est pas trouvée, elle renvoie -1.

Exemple d'utilisation

var arrValues = ["Sam","Great", "Sample", "High"];
var value = "Sam";

var result = $.inArray(value, arrValues);

if (result !== -1) {
    // Value found in array
} else {
    // Value not found in array
}

Références supplémentaires

  • [Comment vérifier si un tableau inclut un objet dans JavaScript ?](https://stackoverflow.com/questions/1232040/how-do-i-check-if-an-array-includes-an-object-in-javascript)

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:
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