Get all directories within directory nodejs Get all directories within directory nodejs node.js node.js

Get all directories within directory nodejs


const { readdirSync } = require('fs')const getDirectories = source =>  readdirSync(source, { withFileTypes: true })    .filter(dirent => dirent.isDirectory())    .map(dirent => dirent.name)


List directories using a path.

function getDirectories(path) {  return fs.readdirSync(path).filter(function (file) {    return fs.statSync(path+'/'+file).isDirectory();  });}


Recursive solution

I came here in search of a way to get all of the subdirectories, and all of their subdirectories, etc. Building on the accepted answer, I wrote this:

const fs = require('fs');const path = require('path');function flatten(lists) {  return lists.reduce((a, b) => a.concat(b), []);}function getDirectories(srcpath) {  return fs.readdirSync(srcpath)    .map(file => path.join(srcpath, file))    .filter(path => fs.statSync(path).isDirectory());}function getDirectoriesRecursive(srcpath) {  return [srcpath, ...flatten(getDirectories(srcpath).map(getDirectoriesRecursive))];}