Jestem wielkim fanem podkreślenia/lodash, więc zwykle używam _.after
, który tworzy funkcję, która jest wykonywana dopiero po wywołaniu określonej liczby razy.
var finished = _.after(2, doRender);
asyncMethod1(data, function(err){
//...
finished();
});
asyncMethod2(data, function(err){
//...
finished();
})
function doRender(){
res.render(); // etc
}
Ponieważ javascript wyciąga definicję funkcji zdefiniowanych za pomocą function funcName()
składnia, twój kod czyta się naturalnie:od góry do dołu.