const fs = require('fs'); const path = require('path'); // let arr = []; // function readdir(dir){ // } // module.exports = readdir; console.log(fs.readdirSync(path.join(__dirname, 'demo'))); // [ '1.png', '444.txt', 'a', 'b' ] // 遍历数组 //
时间: 2023-12-20 08:04:48 浏览: 67
如果你想遍历 `demo` 目录下的所有文件和子目录,你可以使用递归函数来实现:
```javascript
const fs = require('fs');
const path = require('path');
function readdir(dir) {
const files = fs.readdirSync(dir);
files.forEach((file) => {
const filePath = path.join(dir, file);
const stats = fs.statSync(filePath);
if (stats.isDirectory()) {
console.log(`Directory: ${filePath}`);
readdir(filePath);
} else {
console.log(`File: ${filePath}`);
}
});
}
readdir(path.join(__dirname, 'demo'));
```
这个函数首先检查传入的参数是否是一个目录,如果是目录,则打印出目录名,并且递归调用 `readdir` 函数来处理该目录下的所有文件和子目录。否则,就打印出文件名。
你可以根据自己的需求修改这个函数,例如将文件名和目录名添加到一个数组中,而不是直接在控制台中打印出来。
阅读全文