![](/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.