0

For example, from this object i want to only get the values of maxGuests property of the 2 objects to then set it to a state variable in React.

[
  {
    "city": "Helsinki",
    "country": "Finland",
    "superHost": false,
    "title": "Stylist apartment in center of the city",
    "rating": 4.4,
    "maxGuests": 3,
    "type": "Entire apartment",
    "beds": 2,
    "photo": "https://images.unsplash.com/photo-1505873242700-f289a29e1e0f?ixlib=rb-1.2.1&auto=format&fit=crop&w=2255&q=80"
  },
  {
    "city": "Turku",
    "country": "Finland",
    "superHost": false,
    "title": "Nice apartment in center of Helsinki",
    "rating": 4.2,
    "maxGuests": 5,
    "type": "Entire apartment",
    "beds": 3,
    "photo": "https://images.unsplash.com/photo-1554995207-c18c203602cb?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2250&q=80"
  }
]

I know that i can use .filter() but filter returns all the objects that contains the property that im looking for including all the properties that at that moment i dont really need.

pilchard
  • 12,414
  • 5
  • 11
  • 23
tonsofcode
  • 117
  • 2
  • 7
  • You don't need Array.prototype.filter(), but .map() instead as it's shown in the link pilchard provided :) – HereBeAndre Apr 14 '22 at 16:15
  • thank you guys, map() and the link that pilchard provided me help me to understand how to deal with this problem! – tonsofcode Apr 14 '22 at 20:04

1 Answers1

0

you can use map

let data = [{
    "city": "Helsinki",
    "country": "Finland",
    "superHost": false,
    "title": "Stylist apartment in center of the city",
    "rating": 4.4,
    "maxGuests": 3,
    "type": "Entire apartment",
    "beds": 2,
    "photo": "https://images.unsplash.com/photo-1505873242700-f289a29e1e0f?ixlib=rb-1.2.1&auto=format&fit=crop&w=2255&q=80"
  },
  {
    "city": "Turku",
    "country": "Finland",
    "superHost": false,
    "title": "Nice apartment in center of Helsinki",
    "rating": 4.2,
    "maxGuests": 5,
    "type": "Entire apartment",
    "beds": 3,
    "photo": "https://images.unsplash.com/photo-1554995207-c18c203602cb?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2250&q=80"
  }
];
console.log(data.map(i => i.maxGuests))
Nonik
  • 645
  • 4
  • 11