IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    如何判断递归嵌套的回调函数已经结束?(结束的节点有多个,promise好像只能判断单链情况)

    xiaofuzi发表于 2015-12-20 06:54:59
    love 0

    如何判断一个递归嵌套的回调函数已经结束

    var readDirRecur=  function(file, callback) {
            fs.readdir(file, function(err, files) {
            	if(err) throw err;
                files.forEach(function(item) {
                	var fullPath = file + '/' + item;
                    fs.stat(fullPath, function(err, stats) {
                        if (err) throw err;
                        if (stats.isDirectory()) {
                            readDirRecur(fullPath, callback);
                        }else{
                        	/*not use ignore files*/
                        	if(item[0] == '.'){
                        		//console.log(item + ' is a hide file.');
                        	}else{
                        		fs.readFile(fullPath, 'utf8', function(err, data){
                                    callback(item, data, fullPath);
                                })
                        	}
                        }
                    })
                },
                function(err){
                	if(err) throw err;
                })
            })
        }
    	```
    	
    	
    	
    	## 例如:递归读取一个目录下的所有文件,如何判断以读取完所有的文件?


沪ICP备19023445号-2号
友情链接