我想从路径中获取所有文件和目录的名称,并将它们识别为文件和目录。但是当我运行我的代码时,它有时会起作用,有时它会显示目录是文件。这是代码
socket.on('data',function(path){
fs.readdir('path',function(err, data) {
var filestatus=[];
var z=0;
var i=data.length-1;
data.forEach(function(file){
fs.stat(file, function(err, stats) {
filestatus[z]=stats.isDirectory()
if (z==i){
socket.emit('backinfo',{names:data,status:filestatus});
}
z++;
})
})
})
})
在测试过程中,我意识到当我减慢 data.forEach 循环时(使用 console.log(something) 它工作得更好(更少错过)。这很奇怪。