请帮我看看,我的理解对不对
发布于 10 年前 作者 c2194 2918 次浏览 最后一次编辑是 8 年前 来自 问答

刚开始学习node ,看网上的教程和图书,对一段程序进行分析,帮我看看我分析的对不,帮我解答一下疑问

var fs = require(‘fs’); //载入 fs 模块

fs.readdir(".", function (err, files) { //执行fs模块的 readdir 方法 传递一个参数 “.” 和 一个回调方法

var count = files.length, // 取得文件数量
results = {}; // 创建一数组

files.forEach(function (filename) { //循环回调 每次将文件名 给 回调函数的 filename 参数 fs.readFile(filename, function (data) { //读文件 成功后将结果给 回调函数的 data 参数 results[filename] = data; //将数据存入数组 count–; // 每次减1 if (count <= 0) {
// 到这里 文件读完了 // 这里放一个判断的目的是不是等到文件读完了再处理下一个事物呢? }
});
});

3 回复

目的可以很多,看应用场景 文件读完了应该是放出一个 event,完成回调

results = {}; // 创建一数组 。。。。。。。

用readfile的ANSY方法比较靠谱, 反正同异步早晚要阻塞管道。

回到顶部