ES6實現(xiàn)的遍歷目錄函數(shù)示例
更新時間:2017年04月07日 11:19:27 作者:風(fēng)之約
這篇文章主要介紹了ES6實現(xiàn)的遍歷目錄函數(shù),涉及ES6文件目錄的遍歷、讀取、回調(diào)函數(shù)及json相關(guān)操作技巧,需要的朋友可以參考下
本文實例講述了ES6實現(xiàn)的遍歷目錄函數(shù)。分享給大家供大家參考,具體如下:
// npm init // npm install koa --save-dev // node --harmony app.js const fs = require('fs'); var eachDir = (() => { let queue = []; var eachFiles = (options) => { if (queue.length) { let path = queue.shift(); fs.readdir(path, (err, files) => { if (err) { options.fail(err); return; } files.forEach((file, i) => { let url = path + '/' + file; let stats = fs.statSync(url); if (stats.isDirectory()) { queue.push(url); } else { options.callback && options.callback.call(stats, { name: file, size: stats.size, path: url }); } }); eachFiles(options); }); } else { options.done(); } }; return (path, options) => { let stats = fs.statSync(path); if (stats.isDirectory()) { queue.push(path); } eachFiles(options); }; })(); let total = 0, fileTypes = {}; eachDir('./', { callback(file) { let ret = file.name.match(/\.(\w+$)/); if (ret) { if (!fileTypes[ret[0]]) { fileTypes[ret[0]] = 0; } fileTypes[ret[0]] += 1; } // console.log(file); total++; }, done() { console.log(total, fileTypes); fs.writeFile('./result.txt', JSON.stringify(fileTypes), (err) => { if (err) throw err; console.log('done'); }); }, fail(err) { console.log(err); } });
希望本文所述對大家ECMAScript程序設(shè)計有所幫助。
相關(guān)文章
bootstrap校驗laydate起止日期聯(lián)動失效問題及解決方法
這篇文章主要介紹了bootstrap校驗laydate起止日期聯(lián)動失效問題,項目中用到bootstrapValidator,以及l(fā)aydate(by:賢心,插件效果美觀),本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2023-01-01javascript實現(xiàn)二分查找法實現(xiàn)代碼
javascript實現(xiàn)二分查找法實現(xiàn)代碼...2007-11-11JS多個表單數(shù)據(jù)提交下的serialize()應(yīng)用實例分析
這篇文章主要介紹了JS多個表單數(shù)據(jù)提交下的serialize()應(yīng)用,接合實例形式分析了原生javascript實現(xiàn)多個表單提交時serialize操作相關(guān)使用技巧與操作注意事項,需要的朋友可以參考下2019-08-08JavaScript實現(xiàn)在頁面刷新時成功發(fā)送停止請求
最近接到一個需求,需要在頁面刷新或者關(guān)閉瀏覽器標(biāo)簽頁的時候觸發(fā)停止當(dāng)前sql的接口,所以本文小編給大家詳細介紹了解決方案和實現(xiàn)代碼,需要的朋友可以參考下2023-11-11element-ui 上傳圖片后標(biāo)注坐標(biāo)點
有個組件庫的名稱叫做element-ui,基于Vue2.0開發(fā),提供了豐富的PC端組件,本文通過實例代碼給大家介紹element-ui 上傳圖片后標(biāo)注坐標(biāo)點的示例代碼,感興趣的朋友跟隨小編一起看看吧2021-07-07