タスクがあり、既に完了している場合はスキップする必要があり、完了していない場合は実行する必要があります。タスクは非同期です。この後、別のタスクに対して同じチェックを行う必要があり、場合によってはそれを実行する必要があります...
if(!taskStatus.complete[x])
asyncTasks[x](function(result){
if(!taskStatus.complete[y])
asyncTasks[y](function(result){
stow(result);
});
});
if(!taskStatus.complete[y])
asyncTasks[y](function(result){
stow(result);
});
つまり、最初のタスクが完了したかどうかに関係なく、2 番目のタスクを実行する必要がありますが、最初のタスクが完了した場合、2 番目のタスクはそれが完了するまで実行できません。
私のコードはここでかなり繰り返されていますが、これは一般的に非常に悪いことです。ノードのヒップネスにはやむを得ないのでしょうか。ノードはヒップすぎて DRY になりませんか?