Помощь с Reduce

Друзья, Всем доброго времени суток. Помогите решить вопрос именно через reduce, уже голову ломаю, не могу въехать как он работает. У меня есть некий массив и в нем объект и нужно через reduce совершить поиск по свойству 'name' Я что-то пытался, но у меня метод возвращает только последний элемент, хотя в консоль выводит точно как надо.

На выходе функция должна вернуть:

{ name: "third", value: 5}

const testArr = [
  { name: "first", value: 1 },
  { name: "second", value: 2 },
  { name: "third", value: 5 },
  { name: "fourth", value: 1 },
  { name: "fifth", value: 2 }
];

const searchItem = string => {
  return testArr.reduce((acc, curret) => {
    if (curret.name === string) {
      return curret
    }
  }, {})
}

console.log(searchItem('second')); // undefined

и если не у кого-то есть идеи как можно создать еще такой объект так же reduce

{
  "1":  { name: ['first', 'fourth']} },
  "2":  { name: ['second', 'fifth']} },
  "5" : { name: ['third'] }
}

буду очень признателен! Спасибо за помощь и ваше время!


Ответы (0 шт):