olya_097, могу примерно то же и вам посоветовать - после получения ответа не надо пускаться в дискуссии, если в этом нет необходимости. Всё ваши ошибки были перечислены сразу же, говорить было не о чем.
olya_097, судя по тому, что прямого ответа на свой вопрос я не получил - второй вариант. Дам совет: вы попробуйте сначала думать, а только потом говорить. Так вы будете выбешивать своих собеседников гораздо меньше.
"создаём новый" - точнее будет сказать, делаем одно значение из массива (это может быть что угодно - другой массив, объект, число,... - нет проблем возвращать массив, а не как сейчас объект, или сумму всех числовых свойств, или ещё что-то), почитайте про reduce
...acc - это чтобы вернуть все предыдущие полученные результаты, почитайте про spread
ну и условие рекурсии прекращения рекурсии - да, значение должно быть примитивным
В слове "объект" нет мягкого знака. Исправляйте. И тэги тоже - зачем там php и html? Уберите.
А ещё могу дать бесплатный совет, как повысить вероятность и скорость получения подходящего ответа: надо дополнить текст вопроса ссылкой на рабочее демо - jsfiddle, codepen и т.п. вам в помощь.