FileSystemDirectoryHandle: getDirectoryHandle() method
Baseline 2023
Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The getDirectoryHandle() method of the
FileSystemDirectoryHandle interface returns a
FileSystemDirectoryHandle for a subdirectory with the specified name
within the directory handle on which the method is called.
Syntax
getDirectoryHandle(name)
getDirectoryHandle(name, options)
Parameters
name-
A string representing the
FileSystemHandle.nameof the subdirectory you wish to retrieve. optionsOptional-
An optional object containing options for the retrieved subdirectory. Options are as follows:
createOptional-
A boolean value, which defaults to
false. When set totrueif the directory is not found, one with the specified name will be created and returned.
Return value
A Promise which resolves with a FileSystemDirectoryHandle.
Exceptions
NotAllowedErrorDOMException-
Thrown if the
PermissionStatus.statefor the handle is not'granted'inreadwritemode if thecreateoption is set totrueor inreadmode if thecreateoption is set tofalse. TypeError-
Thrown if the name specified is not a valid string or contains characters that would interfere with the native file system.
TypeMismatchErrorDOMException-
Thrown if the returned entry is a file and not a directory.
NotFoundErrorDOMException-
Thrown if the current entry is not found or if the target directory doesn't exist and the
createoption is set tofalse.
Examples
The following example returns a directory handle with the specified name, if the directory does not exist it is created.
const dirName = "directoryToGetName";
// assuming we have a directory handle: 'currentDirHandle'
const subDir = currentDirHandle.getDirectoryHandle(dirName, { create: true });
Specifications
| Specification |
|---|
| File System Standard # api-filesystemdirectoryhandle-getdirectoryhandle |
Browser compatibility
BCD tables only load in the browser