Создание заголовка на странице

Давайте заглянем в саму функцию createTodoApp. В ней вы можете увидеть вызов трех функций и сохранение возвращаемого результата в переменные. Давайте разберемся что тут происходит на примере первой функции createAppTitle.

function createTodoApp(container, title = 'Список дел') {
  let todoAppTitle = createAppTitle(title);
  let todoItemForm = createTodoItemForm();
  let todoList = createTodoList();

  /* остальной код изучим позже */
}

Тут создается элемент с помощью метода document.createElement(), затем с помощью свойства innerHTML сохраняется значение из аргумента title. Ниже я продублировал этот код, но в комментариях указал что именно происходит для каждой строчки кода.

function createAppTitle(title) {
  let appTitle = document.createElement('h2');
  /* <h2></h2> */
  appTitle.innerHTML = title;
  /* <h2>Тут будет значение из title</h2> */

  return appTitle;
}

Обратите внимание на последнюю строчку кода с return. Вызовов return возвращает элемент, без этого переменная todoAppTitle в функции createTodoApp ничего не будет содержать. Когда функция createAppTitle выполниться, то в переменной todoAppTitle будет элемент <h2> с содержимым из переменной title.

function createTodoApp(container, title = 'Список дел') {
  let todoAppTitle = createAppTitle(title);
  /* todoAppTitle = <h2>Тут будет значение из title</h2> */