0

私はJavaScriptコードを実行しています

function asyncs(){
    var backCount = 0;
    function done(){
        if(backCount === 2){
            alert("All done");
            doSomthingUseful();
        }else{
            backCount ++;
        }
    }
    function asyncCall(callBack){
        myRemoteCall(callBack);
    }
    asyncCall(done);
    asyncCall(done);
    asyncCall(done);
}

function doSomethingUseful(){
    alert("Travel to the moon.")
}

これは機能しています。しかし、この醜いカウンター関数を書く必要がないように、もっと良いアプローチがあるかどうか疑問に思っています。

4

1 に答える 1

0

この種の処理には、asyncNimbleなどのフロー制御ライブラリを使用することをお勧めします。内部的にはほとんど同じことをしますが、再利用可能なパターンでそれらを提供します。

于 2012-06-29T00:17:11.050 に答える