After retrieving a JSON such as this:
"JSON": [
{
  "mySchool": "college",
  "myHome": "apartment",
  "myFavoriteSport": "soccer"
},
{
  "mySchool": "highschool",
  "myHome": "house",
  "myFavoriteSport": "hockey"
},
{
  "mySchool": "college",
  "myHome": "box",
  "myFavoriteSport": "soccer"
},
{
  "mySchool": "elementary",
  "myHome": "tent",
  "myFavoriteSport": "soccer"
}
]
How could I filter it conditionally so that... if soccer is the value of myFavoriteSport key, then return an array of all objects containing the myFavoriteSport: soccer pair? I'm sure I'll end up pushingthe object into the array at the end, but I don't quite know how to single it out so that I can assign it to a variable. 
I'm sure it will involve some type of loop, but this is my first time working with JSON and objects of this type so I'm a little unsure of how to approach it.
If you want to filter, then use .filter - just check if the myFavoriteSport property is soccer:
const input = {
  "JSON": [
    {
      "mySchool": "college",
      "myHome": "apartment",
      "myFavoriteSport": "soccer"
    },
    {
      "mySchool": "highschool",
      "myHome": "house",
      "myFavoriteSport": "hockey"
    },
    {
      "mySchool": "college",
      "myHome": "box",
      "myFavoriteSport": "soccer"
    },
    {
      "mySchool": "elementary",
      "myHome": "tent",
      "myFavoriteSport": "soccer"
    }
  ]
};
console.log(
  input.JSON.filter(({ myFavoriteSport }) => myFavoriteSport === 'soccer')
);
Also note that JSON is a way of representing an object in string format. (for example,
const myJSON = '[{"foo":"bar"},{"baz":"buzz"}]';
). If you have the actual object/array, then it's not in JSON format - it's just a plain object. Better to name the key something like arr or personArr or something like that. There's no such thing as a "JSON Object"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With