Аз съм голям фен на долната черта/lodash, така че обикновено използвам _.after
, което създава функция, която се изпълнява само след като бъде извикана определен брой пъти.
var finished = _.after(2, doRender);
asyncMethod1(data, function(err){
//...
finished();
});
asyncMethod2(data, function(err){
//...
finished();
})
function doRender(){
res.render(); // etc
}
Тъй като javascript издига дефиницията на функциите, дефинирани с function funcName()
синтаксис, вашият код се чете естествено:отгоре до долу.