Так что если вы сделаете это
fs.readdir('/path/to/empty_dir', (data, err) => console.log(data, '.....', err))
Вы увидите, что результат будет:
null '.....' []
Таким образом, ваш код может быть упрощен как
fs.readdir(dirname, (err, files) => {
if (err && !files) {
console.error(err)
}
console.info('the files --> ', files)
let regexp = RegExp('.jpeg|.doc|.png|.zip', 'gi')
for(result in files) {
if(regexp.test(files[result])) {
console.log('I have the following', files[result])
}
}});
Однако ....
Мы хотим, чтобы это было быстро, современно и эффективно, не так ли??!
Так что это еще лучше:
fs.readdir(dirname, (err, files) => {
if (err && !files) {
console.error(err)
}
let regexp = RegExp('.jpeg|.doc|.png|.zip', 'gi');
files.filter(
file => file.match(regexp)
).map(
result => console.log('I have the following',result)
);
});
Одним из преимуществ использования карты в каталоге является то, что вы гарантируете сохранение порядка, он также выглядит чище.
Карта встроена итеративно - Object нет, это не означает, что Map является заменой для Object, есть варианты использования для обоих.Это другая история.