-1
votes

Comment obtenir la valeur d'un objet à l'intérieur d'un tableau dans mon application angulaire

Donc, j'ai donc cette gamme d'objets provenant d'une API dans mon application angulaire xxx

mon objectif est d'afficher un élément du troisième objet sur la console. J'ai donc essayé de boucler dans le tableau de l'objet de cette façon: xxx

Je suppose que le non défini vient des deux premiers objets.

Comment puis-je boucler à travers cet objet pour obtenir uniquement la figure de angleterre dans le troisième objet, sans les deux premiers indéfinis montrant?

NOTE :

DATA vient de l'API que j'ai souscrit dans le fichier . / fort>. Il contient tous les résultats de l'API.


1 commentaires

Data ['register'] [2] .england si la position de l'élément est toujours la 3ème.


3 Réponses :


2
votes

Vous pouvez .Filter () code> Tous les objets qui n'ont pas de angleterre code> (et gardez tous ceux qui font), puis .map ( ) code> Votre éventail d'objets comme:

p>

<script src="https://cdn.jsdelivr.net/lodash/4.16.4/lodash.min.js"></script>


1 commentaires

Merci beaucoup. Cela a fonctionné. En outre, si je devais afficher tous les éléments de l'objet en tant que tableau. Comment allais-je aller à ce sujet? Je me suis fatigué de faire ça: `` `laisser pays = data.register .Filter (obj => 'angleterre' in obj) .map (obj => obj) console.log (pays) // Sortie: [{" Brésil ": 5, "France": 1, "Italie": 2, "Angleterre": 2}] `` `Je veux juste qu'ils soient dans un tableau et non un éventail d'objets. Quelque chose comme ça: `` `` [5,1, 2, 2]



2
votes

Vous pouvez utiliser _. compact (tableau) code> fonction intégrée de Lodash qui supprime toutes les valeurs FALSY telles que FALSE, NULL, 0, "", non définie et NAN.

let country = _.compact(data['register'].map(data => data.England));
console.log(country) // Output: [2]


0 commentaires

1
votes

Utiliser un cas de carte est totalement différent de ce que vous essayez d'atteindre. La carte itère sur vos collections et pour chaque élément de collections, produisez un nouveau résultat et sera retourné. Donc, pour les deux premiers objets, il ne trouve pas si non défini . Vous avez 3 objet, vous avez une matrice de 3 avec les deux premiers étant non définis Utilisez une carte lorsque vous souhaitez traiter les collections et souhaite une nouvelle collection avec votre résultat souhaité.

ici, vous pouvez utiliser trouver: xxx


4 commentaires

La question que j'avais avec .Find () était, cela me donnait les résultats comme objet. Je le voulais comme une matrice.


Il suffit d'assigner en tant que tableau: console.log ([fonditem.england]); J'ai édité


Cela fonctionne bien aussi, mais pour le scénario, je vais faire face, je vais aller avec Nick Parsons répondre ci-dessus. J'apprécie vraiment votre réponse. Merci.


@Dejiadesoga Pas de soucis.