Vérifier si la valeur existe dans l'objet JavaScript
Comment pourrais-je vérifier dans mon tableau d'objets, si un élément spécifique existe (dans mon cas MachineId avec l'id 2)?
[{"MachineID":"1","SiteID":"20"},{"MachineID":"2","SiteID":"20"},{"MachineID":"3","SiteID":"20"},{"MachineID":"4","SiteID":"20"}]
J'ai essayé ceci:
if (index instanceof machineIds.MachineID) {
alert('value is Array!');
} else {
alert('Not an array');
}
source d'informationauteur ShaneKm | 2012-11-29
Vous devez vous connecter pour publier un commentaire.
Dans le navigateur croix de chemin, vous pouvez utiliser
jQuery.grep()
méthode:Le plus simple pour comprendre la solution est de faire une boucle sur le tableau, et vérifier chacune.
Remarque si il n'y a plus d'un élément correspondant, ce sera le retour de la dernière. Vous pouvez également habiller cette en fonction.
Il y a beaucoup de standard solution, vous n'avez pas besoin de bibliothèques tierces ou d'une boucle itérative.
méthode - depuis JavaScript 1.6.
trouver
méthode - depuis ES6findIndex
méthode - depuis ES6Par exemple, à l'aide de
some()
;Tableau
some
méthode accepte deux paramètres:Fonction de rappel n'est pas couplé avec l'itération code et, à l'aide de thisObject paramètre, vous pouvez même retourner à l'appelant l'élément de données ou plus.
Si un tel élément est trouvé,
some
immédiatement retourne truehttp://jsfiddle.net/gu8Wq/1/
Vieille question à ce point, mais voici un ES6 solution qui utilise Tableau.trouver:
Vous pouvez utiliser cette condition: