Sobes.tech
Назад к задачам
Intern — Middle
25

Рекурсивный сбор путей к файлам в вложенной структуре

Компании, где спрашивали:

СБЕР ТехСБЕР Тех
Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Функция принимает объект, описывающий файловую систему, и возвращает массив строк, где каждая строка – полный путь к отдельному файлу. Вложенность может быть произвольной, но на каждом уровне присутствует только одна директория.

/* входные данные */
const fileTree = [
  "a.js",
  "b.js",
  {
    src: [
      "some.js",
      "other.js",
      {
        components: ["someComponent.js"],
      },
    ],
  },
];

/*
  Ожидаемый результат:
  [
   'a.js',
   'b.js',
   'src/some.js',
   'src/other.js',
   'src/components/someComponent.js'
  ]
*/

const collectPaths = (arr) => {

};

console.log(collectPaths(fileTree));