JavaScript:
Checking if a directory exists
How to:
In Node.js, since JavaScript itself doesn’t have direct access to the file system, the fs module is typically used for such operations. Here’s a simple way to check if a directory exists using fs.existsSync():
const fs = require('fs');
const directoryPath = './sample-directory';
// Check if the directory exists
if (fs.existsSync(directoryPath)) {
console.log('Directory exists.');
} else {
console.log('Directory does not exist.');
}Sample Output:
Directory exists.Or, for a non-blocking asynchronous approach, use fs.promises with async/await:
const fs = require('fs').promises;
async function checkDirectory(directoryPath) {
try {
await fs.access(directoryPath);
console.log('Directory exists.');
} catch (error) {
console.log('Directory does not exist.');
}
}
checkDirectory('./sample-directory');Sample Output:
Directory exists.For projects that make heavy use of file and directory operations, the fs-extra package, an extension of the native fs module, offers convenient additional methods. Here’s how you can achieve the same with fs-extra:
const fs = require('fs-extra');
const directoryPath = './sample-directory';
// Check if the directory exists
fs.pathExists(directoryPath)
.then(exists => console.log(exists ? 'Directory exists.' : 'Directory does not exist.'))
.catch(err => console.error(err));Sample Output:
Directory exists.This approach enables clean, readable code that seamlessly integrates with modern JavaScript practices.