Вопрос №41230 от пользователя Сергей Климов в уроке «Агрегация», курс «JS: Деревья»

Сергей Климов

Понял как проводить агрегацию не поняв, как работает пересчет узлов. Откуда берутся цифры за директории, если мы проверяем только isFile -> 1 ? Задача по поиску только скрытых файлов проще для понимания оказалась xD

6 0

Roman Ashikov

В данном задании по условию не нужно производить подсчет количества скрытых директорий. Только количество скрытых файлов.

Я проверил тесты и решение, все работает правильно.

0

Сергей Климов

Роман Ашиков, извините, плохо объяснил проблему. Не понял как идет подсчет узлов из примера в теории. А эту задачу решил без проблем.

0

Roman Ashikov

Ключевая строка в примере по вашему вопросу:

return 1 + _.sum(descendantsCount);

Тут как раз и происходит подсчет количества директорий. 1 — это и есть текущая директория, а _.sum(descendantsCount) общее количество всех потомков, будь то директории или файлы.

Поэкспериментируйте с примером на https://repl.it/@hexlet/js-trees-aggregation-getNodesCount. Попробуйте просто удалить 1 + и посмотреть на результат.

4

Сергей Климов

Роман Ашиков, спасибо. Мозг забывает про рекурсию и что единица будет браться каждый раз.

0

Roman Ashikov

Хитрые деревья. :)

1

Vyacheslav

Роман Ашиков, ключевой совет, который помог мне разобраться с агрегацией

Попробуйте просто удалить 1 + и посмотреть на результат

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
7 июля 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
7 июля 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
7 июля 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
7 июля 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
7 июля 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
7 июля 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
7 июля 5 месяцев