demo.js:
const fs = require('fs');
fs.readdir('./public',function(err,files) {
var wenjianjia = [];
(function iterator(i) {
if(i==files.length){ // 如果递归结束
console.log(wenjianjia);
return;
}
fs.stat('./public/'+files[i],function(err,stats) { // 该函数是异步的。
if(stats.isDirectory()){
wenjianjia.push(files[i]);
}
iterator(i+1); // 通过递归实现异步流程控制(异步变同步)
});
})(0); // 立即执行函数
});