对于给定的目录,如何在 node 中按时间顺序(按修改日期)获取文件列表.JS?我在文件系统文档中没有看到任何东西.

推荐答案

试试看.

var dir = './'; // your directory

var files = fs.readdirSync(dir);
files.sort(function(a, b) {
               return fs.statSync(dir + a).mtime.getTime() - 
                      fs.statSync(dir + b).mtime.getTime();
           });

我使用了"同步"版本的方法.您应该根据需要使它们异步.(可能只有readdir部分.)


如果缓存统计信息,可能会稍微提高性能.

var files = fs.readdirSync(dir)
              .map(function(v) { 
                  return { name:v,
                           time:fs.statSync(dir + v).mtime.getTime()
                         }; 
               })
               .sort(function(a, b) { return a.time - b.time; })
               .map(function(v) { return v.name; });

Node.js相关问答推荐

在child_Process中持久运行SSH命令

NX无法使用缓存运行根级脚本

从MongoDB获取Tree数据

Node.js分页返回空数组

如何在Sequelize with Postgres中将m:n关联表ID从整数迁移到UUID?

GitLab 依赖扫描需要源代码中的 package-lock.json 才能执行

在 Docker 容器内创建一个 cron 作业(job)来执行 run.js 文件中的函数

使用NodeJS通过服务账号列出Google Workspace用户

错误:无法为 /blog 收集页面数据并且在 object.fetch 处获取失败

错误:找不到模块'C:\Users\nguye\AppData\Local\nodejs\node_modules\npm\bin\npm-cli.js'

如何使用来自前一阶段的另一个数组的聚合mongoose 在数组中添加字段

Node js中向rest服务发送https请求的步骤

在Go中,编写非阻塞代码有意义吗?

如何从 Redis 保存和检索会话

Node.js 17.0.1 Gatsby 错误-数字信封 routine ::不支持 ... ERR_OSSL_EVP_UNSUPPORTED

npm install - javascript堆内存不足

卸载代码/模块

node --experimental-modules,请求的模块不提供名为的导出

如何在 NodeJS 中拆分和修改字符串?

AWS Lambda 函数写入 S3