Photoshop脚本中如何对.getFiles()获取的文件按创建时间排序?
Photoshop脚本:按创建时间排序文件列表
你可以利用JavaScript数组的sort()方法,结合Photoshop脚本中File/Folder对象的creationDate属性来实现排序。creationDate会返回一个时间戳数值,直接通过数值比较就能确定文件的创建先后顺序。
完整示例代码
// 获取下载目录下的所有文件和文件夹 var fileFolderArray = Folder("~/Downloads/").getFiles(); // 按创建时间升序排列(最早创建的文件/文件夹在前) fileFolderArray.sort(function(a, b) { return a.creationDate - b.creationDate; }); // 若需要降序排列(最新创建的在前),替换为下面的排序函数 // fileFolderArray.sort(function(a, b) { // return b.creationDate - a.creationDate; // }); // 可选:仅保留文件(过滤掉文件夹) var onlyFiles = fileFolderArray.filter(function(item) { return item instanceof File; });
关键说明
creationDate属性对File和Folder对象都有效,所以不管是文件还是文件夹都能参与排序sort()的回调函数中,返回a.creationDate - b.creationDate会按时间从早到晚排序,反过来则是从晚到早- 如果你只需要处理文件而不是文件夹,可以用
filter()方法结合instanceof File来筛选
内容的提问来源于stack exchange,提问作者Matoyo
相关产品推荐
相关产品推荐

