2016-10-18 10 views
1

私は、指定されたすべての関数が完了してから別の関数を呼び出すまで待つ方法を工夫しています。 valueArrayは{1,2,3}のサブセットを含む配列であるスイッチ内のコールバック

for (i = 0; i < valueArray.length; i++){ 
    SwitchCall(valueArray[i]); 
} 

function SwitchCall(value){ 
    switch(value){ 
     case 1: FunctionOne(); break; 
     case 2: FunctionTwo(); break; 
     case 3: FunctionThree(); break; 
    } 
} 

SomeOtherFunction() 

:今、私はこの線に沿って何かを持っています。 SomeOtherFunctionを呼び出す前に、配列に指定されているすべての関数を完了させる必要があります。 3つの関数に何らかのコールバックを入れる必要があると思いますが、最初に完了するために他の関数が必要な場合があるので、コールバックでSomeOtherFunctionを呼び出すことはできません。移動する前にこれらの機能がすべて完了するのを待つにはどうしたらいいですか?

+2

繰延jQueryを使っての約束を使用することができますが、JavaScriptで約束を参照することもできます。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise –

+0

いずれの関数も非同期ですか? – KevBot

+0

@KevBotこれはすべて非同期です。 – djb212

答えて