![](/img/trans.png)
[英]How do I filter an array object inside of a array of objects Javascript?
[英]How do I filter a nested array of object in javascript?
如何获得来自不同俱乐部的所有足球队? 数组结构:俱乐部数组>每个俱乐部有多个球队>每个球队有许多事件(比赛)。
我的目标是使用运动属性 ==“足球”过滤每个俱乐部的所有球队对象。
[{ _id: "afsajjenfjnjngiessnagkl", logo: "picture.jpeg", name: "Club1", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, { _id: "akjjktfsho3gag232kl2ml24", sport: "Wrestling", events: [ { _id: "nafhjnkns3jn4s2nkjn2b4kjkn", opponent: "Other Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, { _id: "afsajjenfjnjngienagkl", logo: "picture.jpeg", name: "Club2", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, { _id: "akjjktfsho3gag232kl2ml24", sport: "Wrestling", events: [ { _id: "nafhjnkns3jn4s2nkjn2b4kjkn", opponent: "Other Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, ]
期望的结果:只过滤来自不同俱乐部的足球队。
[{ _id: "afsajjenfjnjngiengaagkl", logo: "picture.jpeg", name: "Club1", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, { _id: "afsajjenfjnjngienagkl", logo: "picture.jpeg", name: "Club2", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, ]
你这样做是为了代表足球进行过滤。
const arr = [ { _id: "afsajjenfjnjngiessnagkl", logo: "picture.jpeg", name: "Club1", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, { _id: "akjjktfsho3gag232kl2ml24", sport: "Wrestling", events: [ { _id: "nafhjnkns3jn4s2nkjn2b4kjkn", opponent: "Other Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, { _id: "afsajjenfjnjngienagkl", logo: "picture.jpeg", name: "Club2", teams:[ { _id: "akjjkngho3nkjk232kl2ml24", sport: "football", events: [ { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Football Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, { _id: "akjjktfsho3gag232kl2ml24", sport: "Wrestling", events: [ { _id: "nafhjnkns3jn4s2nkjn2b4kjkn", opponent: "Other Club", }, { _id: "nafkjnkn23jn4j2nkjn2b4kjkn", opponent: "Other Club", }, ] }, ] }, ] let footbal = []; arr.forEach((a) => { a.teams.forEach((b) => { if (b.sport === 'football') { console.log('true') footbal.push(b) } else { console.log('false') } }) /* footbal = a.teams.filter((c) => c.sport === 'football') */ }) console.log(footbal)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.