Написать функцию, которая возвращает значение плюс предыдущее (замыкание) js

Нужно написать функцию, которая выводит переданное значение плюс предыдущее. Что-то наподобие вот этого

console.log('Hello'); \\ Hello
console.log('My'); \\ Hello My
console.log('Friend') \\ Hello My Friend

Сломал себе уже голову. Не могу разобраться с алгоритмом.
Остановился на этом(знаю что далек от истины). Думаю нужна доп переменная для запоминания.

function rememberPhrase(word) {
let phrase = word;

function showLater () {
  return phrase += word
}
 phrase = showLater();
 return phrase
}

Буду очень признателен за помощь!


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

Автор решения: SwaD

Вариант простой:

let txt = '';
function appender(text) {
  txt += ' ' + text;
  return txt;
}

console.log(appender('2'))
console.log(appender('3'))
console.log(appender('4'))

А вот это наверное то, что нужно

function appender2() {
  let txts = '';
  function add(text) {
    return txts += ' ' + text
  }
  return add;
}

const fff = appender2();

console.log(fff('5'))
console.log(fff('6'))
console.log(fff('7'))

→ Ссылка