Problem z object.find

0

Cześć !
Napotkałem w internecie pewne zadanie i ku mojemu zdziwieniu moja odpowiedź nie działa:

Mam przykładową tablicę:

const ladders = [
  { id: 1, height: 20 },
  { id: 4, height: 25 },
];

I mam stworzyć funkcję która wyszuka obiekt z tablicy.
Pierwszym argumentem ma być tablica, a drugim obiekt typu {height: 25}.
Więc funkcja:

findWhere(ladders, {height: 25})

powinna zwrócić:

{ id: 4, height: 25 }

Stworzyłem taką funkcję:

function findWhere(array, criteria) {
  array.find((array) => {
    const keys = Object.keys(criteria);
    return array[keys[0]] === criteria[keys[0]];
  });
}

przy założeniu że warunek będzie jeden

Niestety zwraca ona undefined i nie wiem dla czego.
Co zrobiłem nie tak?

3

Bo nie zwracasz w funkcji tej wartości

function findWhere(array, criteria) {
  return array.find((array) => {
    const keys = Object.keys(criteria);
    return array[keys[0]] === criteria[keys[0]];
  });
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1