Je suis un grand fan de underscore/lodash, donc j'utilise généralement _.after
, qui crée une fonction qui ne s'exécute qu'après avoir été appelée un certain nombre de fois.
var finished = _.after(2, doRender);
asyncMethod1(data, function(err){
//...
finished();
});
asyncMethod2(data, function(err){
//...
finished();
})
function doRender(){
res.render(); // etc
}
Puisque javascript hisse la définition des fonctions définies avec la function funcName()
syntaxe, votre code se lit naturellement :de haut en bas.