A class representing a directory stream.
Created by opendir, opendirSync, or fsPromises.opendir()
.
import { opendir } from 'node:fs/promises';
try {
const dir = await opendir('./');
for await (const dirent of dir)
console.log(dirent.name);
} catch (err) {
console.error(err);
}
When using the async iterator, the fs.Dir
object will be automatically
closed after the iterator exits.
Properties Jump to heading
Jump to headingpath: string
The read-only path of this directory as was provided to opendir,opendirSync, or fsPromises.opendir()
.
Methods Jump to heading
Jump to heading[Symbol.asyncIterator](): AsyncIterableIterator<Dirent>
Asynchronously iterates over the directory via readdir(3)
until all entries have been read.
Jump to headingclose(): Promise<void>
Asynchronously close the directory's underlying resource handle. Subsequent reads will result in errors.
A promise is returned that will be fulfilled after the resource has been closed.
Jump to headingclose(cb: NoParamCallback): void
Jump to headingcloseSync(): void
Synchronously close the directory's underlying resource handle. Subsequent reads will result in errors.
Jump to headingread(): Promise<Dirent | null>
Asynchronously read the next directory entry via readdir(3)
as an fs.Dirent
.
A promise is returned that will be fulfilled with an fs.Dirent
, or null
if there are no more directory entries to read.
Directory entries returned by this function are in no particular order as provided by the operating system's underlying directory mechanisms. Entries added or removed while iterating over the directory might not be included in the iteration results.
Jump to headingread(cb: (err: ErrnoException | null,dirEnt: Dirent | null,) => void): void
Jump to headingreadSync(): Dirent | null
Synchronously read the next directory entry as an fs.Dirent
. See the
POSIX readdir(3)
documentation for more detail.
If there are no more directory entries to read, null
will be returned.
Directory entries returned by this function are in no particular order as provided by the operating system's underlying directory mechanisms. Entries added or removed while iterating over the directory might not be included in the iteration results.