Node.js でディレクトリかどうかを判定する方法
9 years ago
fs.statSync で判定
fs モジュールの statSync で fs.Stats を取得してディレクトリかどうかを判定.
var fs = require('fs');
var filepath = 'hoge';
if (fs.statSync(filepath).isDirectory()) {
console.log(filepath + ' is directory.'); // hoge is directory.
}
より安全に判定
上の判定方法だとその ファイル or ディレクトリ
自体が存在しなかった場合
エラーになってしまいます.
存在チェックもするとより安全かも
var fs = require('fs');
var filepath = 'hoge';
if (fs.existsSync(filepath) && fs.statSync(filepath).isDirectory()) {
console.log(filepath + ' is directory.'); // hoge is directory.
}
関数化してスマートに
よく使う場合は関数化しておくと便利です.
var fs = require('fs');
var isDir = function(filepath) {
return fs.existsSync(filepath) && fs.statSync(filepath).isDirectory();
};
var filepath = 'hoge';
if (isDir(filepath)) {
console.log(filepath + ' is directory.'); // hoge is directory.
}